เมื่อไม่กี่วันก่อน ทีมพัฒนา เบื้องหลังโครงการเมซา ทำให้เป็นที่รู้จัก ผ่านการประกาศความพร้อมใช้งานของ เวอร์ชันทดลอง 26.1.0ซึ่งเป็นตัวแทนของการใช้งานแบบโอเพนซอร์สอ้างอิงสำหรับ API กราฟิก OpenGL และ Vulkan
นี่คือข้อมูลอัปเดตเบื้องต้น นับเป็นก้าวสำคัญอย่างยิ่งด้วยการผสานรวมความเข้ากันได้อย่างสมบูรณ์กับ ข้อมูลจำเพาะ Vulkan 1.4 ในตัวควบคุมหลักๆ ที่วางจำหน่ายในตลาด ตัวควบคุมที่ได้รับประโยชน์ ได้แก่ ANV (Intel), RADV (AMD), NVK (NVIDIA), HoneyKrisp (Apple) และ Turnip (Qualcomm)
นอกเหนือจากการอัปเดตโปรโตคอลแล้ว เวอร์ชันนี้ยังเปลี่ยนแปลงวิธีการทำงานร่วมกันระหว่างสภาพแวดล้อมเสมือนกับฮาร์ดแวร์จริงอย่างสิ้นเชิง และปรับโครงสร้างการสนับสนุนอุปกรณ์พลังงานต่ำใหม่ ด้วยการแนะนำการเร่งความเร็วเครื่องเสมือน การขยาย OpenGL อย่างมีกลยุทธ์ผ่านตัวแปลภาษาเช่น Zink และการลบไดรเวอร์ที่ล้าสมัยอย่าง VirGL ที่กำลังจะเกิดขึ้น Mesa 26.1.0 ไม่เพียงแต่เพิ่มคุณสมบัติใหม่เท่านั้น แต่ยังปรับปรุงโค้ดเบสให้สะอาดขึ้นเพื่อปูทางไปสู่เวอร์ชันเสถียรในอนาคตสำหรับสภาพแวดล้อมการผลิตอีกด้วย
การเร่งความเร็วของกราฟิกในเครื่องเสมือน
Uno หนึ่งในความก้าวหน้าที่โดดเด่นที่สุดในภาคนี้ เป็น การนำการเข้าถึง GPU โดยตรงสำหรับเครื่องเสมือนมาใช้งาน ผ่านโปรโตคอล VirtIO-GPU เริ่มแรกสามารถใช้งานได้กับไดรเวอร์ของ Intel (ไอริส, โครคัส และ ANV) ก่อนหน้านี้ เมื่อเครื่องเสมือน (ระบบ "แขก") ต้องการแสดงผลกราฟิก 3 มิติ มันจะต้องแปลและส่งคำสั่งกราฟิกผ่านเลเยอร์การจำลองและโปรโตคอลระดับกลางหลายชั้นจนกว่าจะถึงระบบปฏิบัติการโฮสต์ (ระบบ "โฮสต์") ซึ่งก่อให้เกิดความหน่วงสูงและจำกัดประสิทธิภาพของเกมหรือแอปพลิเคชันที่ต้องการประสิทธิภาพสูง
ด้วย การนำการเข้าถึง VirtIO-GPU มาใช้จะช่วยขจัดปัญหาคอขวดนี้ได้. และ ขณะนี้ระบบแขกสามารถบรรจุคำสั่งกราฟิกในรูปแบบดั้งเดิมของตนเองได้แล้ว และส่งข้อมูลเหล่านั้นไปยังการ์ดกราฟิกจริงของโฮสต์โดยตรง ข้ามการจำลองเทคโนโลยีนี้เปลี่ยนแปลงประสิทธิภาพของ GPU เสมือนอย่างสิ้นเชิง ทำให้คุณสามารถเล่นเกมและใช้งานซอฟต์แวร์หนักๆ ภายในเครื่องเสมือนได้ด้วยประสิทธิภาพที่เกือบจะเทียบเท่ากับที่ได้รับในสภาพแวดล้อมแบบเนทีฟ
การสนับสนุน OpenGL กำลังขยายไปสู่สถาปัตยกรรมอุปกรณ์พกพาและสถาปัตยกรรมพลังงานต่ำด้วยเช่นกัน. ตัวควบคุม Zink ได้เปิดใช้งานการรองรับ OpenGL ES 2.0 แล้ว ผ่านฮาร์ดแวร์ PowerVR ทำให้สามารถเร่งความเร็วฮาร์ดแวร์บนอุปกรณ์รุ่นใหม่ที่รองรับเฉพาะ API Vulkan เท่านั้น นอกจากนี้ ไดรเวอร์ยัง... แพนฟรอสt ซึ่งได้รับการออกแบบมาสำหรับสถาปัตยกรรม ARM Mali มันรวมส่วนขยาย GL_EXT_shader_image_load_store เข้าไว้ด้วยในขณะเดียวกัน ไดรเวอร์ของ AMD และ Broadcom ก็เพิ่มการรองรับเซมาฟอร์ที่สำคัญและส่วนขยายการแรเงา
การเสื่อมถอยของ VirGL และการกำหนดมาตรฐานสมัยใหม่
การปรับปรุงให้ทันสมัยทั้งหมดนี้ย่อมนำมาซึ่งความล้าสมัยของชิ้นส่วนรุ่นเก่าที่ไม่ตรงตามมาตรฐานประสิทธิภาพในปัจจุบันอย่างหลีกเลี่ยงไม่ได้ ไดรเวอร์ VirGLซึ่งเป็นรากฐานสำคัญในการใช้งาน GPU เสมือนภายในอีมูเลเตอร์ QEMU มานานหลายปี ได้รับการประกาศอย่างเป็นทางการแล้วว่าไม่ต้องบำรุงรักษา.
El ทีมของเมซาได้ออกมาเตือนแล้ว ที่ หากไม่มีนักพัฒนาภายนอกรายใดเสนอตัวรับผิดชอบต่อโค้ดของตน ในระยะสั้น VirGL จะถูกลบออกจากสาขาหลักอย่างถาวร การตัดสินใจครั้งนี้ตอกย้ำความเชื่อมั่นอย่างเต็มเปี่ยมของโครงการที่มีต่อระบบนิเวศ VirtIO-GPU ใหม่ และถือเป็นการสิ้นสุดยุคสมัยของการจำลองกราฟิกแบบโอเพนซอร์ส ซึ่งบังคับให้อุตสาหกรรมต้องเปลี่ยนไปใช้โปรโตคอลที่มีประสิทธิภาพและตรงไปตรงมามากกว่าเดิม
สุดท้ายนี้ หากท่านสนใจทราบข้อมูลเพิ่มเติม สามารถดูรายละเอียดใน ลิงค์ต่อไปนี้
จะติดตั้งไดร์เวอร์ Mesa บน Linux ได้อย่างไร?
ลอส แพ็คเกจ Mesa พบได้ในระบบปฏิบัติการ Linux ทั้งหมดดังนั้นการติดตั้งสามารถทำได้โดยการดาวน์โหลดและรวบรวมซอร์สโค้ด (ข้อมูลทั้งหมดเกี่ยวกับเรื่องนี้ที่นี่i) หรือในวิธีที่ค่อนข้างง่าย ซึ่งขึ้นอยู่กับความพร้อมใช้งานภายในช่องทางการจัดจำหน่ายอย่างเป็นทางการของคุณหรือบุคคลที่สาม
สำหรับผู้ที่เป็น ผู้ใช้ Ubuntu, Debian หรือรุ่นที่พัฒนาต่อยอด ในการแจกจ่ายเหล่านี้ มักจะพบ Mesa ในที่เก็บข้อมูลอย่างเป็นทางการ การติดตั้งหรืออัพเดต:
sudo apt update && sudo apt upgrade -yERS
sudo apt install mesa-utils mesa-va-drivers mesa-vulkan-driv
หากคุณต้องการ เวอร์ชั่นล่าสุดจาก PPA (สำหรับ Ubuntu และเวอร์ชันที่ดัดแปลง):
sudo add-apt-repository ppa:kisak/kisak-mesa
sudo apt update
sudo apt upgrade -y
ในกรณีของผู้ที่เป็นผู้ใช้ Arch Linux และอนุพันธ์ เราติดตั้งสิ่งเหล่านี้ด้วยคำสั่งต่อไปนี้:
sudo pacman -S mesa mesa-utils mesa-demos mesa-libgl lib32-mesa lib32-mesa-libgl
สำหรับใครก็ตาม ผู้ใช้ fedora, คุณควรทราบว่ามีแพ็คเกจที่อัปเดตอยู่ในที่เก็บข้อมูลของพวกเขาแล้ว และคุณเพียงแค่ต้องรัน:
sudo dnf install mesa-dri-drivers mesa-va-drivers mesa-vulkan-drivers
หากคุณต้องการเวอร์ชันล่าสุด คุณสามารถใช้ที่เก็บข้อมูล Mesa Copr ได้:
sudo dnf copr enable grigorig/mesa-stable
sudo dnf update
สุดท้ายนี้สำหรับผู้ที่ ผู้ใช้ openSUSEคุณสามารถติดตั้งหรืออัปเดตได้โดยการพิมพ์:
sudo zypper in mesa