ไดรเวอร์แบบเปิดของ Rusticl ได้รับการรับรองตามมาตรฐาน OpenCL 3.0

นักพัฒนาโครงการ Mesa ได้ประกาศการรับรองโดยองค์กร Khronos ของไดรเวอร์ Rustic ซึ่งผ่านการทดสอบทั้งหมดจากชุด CTS (Kronos Conformance Test Suite) ได้สำเร็จ และได้รับการยอมรับว่าเข้ากันได้อย่างสมบูรณ์กับข้อกำหนด OpenCL 3.0 ซึ่งกำหนด API และ ส่วนขยายของภาษา C สำหรับการจัดการการประมวลผลแบบขนานข้ามแพลตฟอร์ม การได้รับใบรับรองทำให้คุณสามารถประกาศการปฏิบัติตามมาตรฐานอย่างเป็นทางการและใช้เครื่องหมายการค้า Khronos ที่เกี่ยวข้องได้ การทดสอบดำเนินการบนระบบที่มี Intel GPU รุ่นที่ 12 ในตัว โดยใช้ไดรเวอร์ Gallium3D Iris

ไดรเวอร์นี้เขียนด้วยภาษา Rust และพัฒนาโดย Karol Herbst จาก Red Hat ซึ่งเกี่ยวข้องกับการพัฒนา Mesa ไดรเวอร์ Nouveau และ OpenCL open stack Rusticle ทำหน้าที่เป็นอะนาล็อกของ OpenCL frontend Clover ของ Mesa และยังได้รับการพัฒนาโดยใช้อินเทอร์เฟซ Gallium ที่ให้ไว้ใน Mesa Clover ถูกทิ้งร้างมาเป็นเวลานาน และ Rusticl จะถูกวางตำแหน่งให้เป็นสิ่งทดแทนในอนาคต นอกเหนือจากการบรรลุความเข้ากันได้ของ OpenCL 3.0 แล้ว โครงการ Rusticle ยังแตกต่างจาก Clover ในการรองรับส่วนขยาย OpenCL สำหรับการประมวลผลภาพ แต่ยังไม่รองรับรูปแบบ FP16 ในการสร้างการเชื่อมโยงสำหรับ Mesa และ OpenCL ทำให้คุณสามารถเรียกใช้ฟังก์ชัน Rust จากโค้ด C และในทางกลับกัน จะใช้Rust-bindgen ใน Rusticle

รหัสสนับสนุนภาษา Rust และไดรเวอร์ชนบทได้รับการยอมรับในกระแสหลักของ Mesa และจะนำเสนอในรุ่น Mesa 22.3 ซึ่งคาดว่าจะในช่วงปลายเดือนพฤศจิกายน การสนับสนุน Rust และ Rusticl จะถูกปิดใช้งานตามค่าเริ่มต้น และจะต้องมีบิลด์ที่มีการระบุอ็อพชัน "-D gallium-rusticl=true -Dllvm=enabled -Drust_std=2021" อย่างชัดเจน เมื่อสร้าง คุณจะต้องมีคอมไพเลอร์rustc, ตัวสร้างการผูกมัดbindgen, LLVM, SPIRV-Tools และ SPIRV-LLVM-Translator เป็นการขึ้นต่อกันเพิ่มเติม

มีการพูดคุยถึงความเป็นไปได้ของการใช้ภาษา Rust ในโครงการ Mesa มาตั้งแต่ปี 2020 ข้อดีของการรองรับ Rust นั้นมีการกล่าวถึงความปลอดภัยและคุณภาพของไดรเวอร์ที่เพิ่มขึ้นเนื่องจากการกำจัดปัญหาทั่วไปเมื่อทำงานกับหน่วยความจำรวมถึงความสามารถในการรวมการพัฒนาของบุคคลที่สามใน Mesa เช่น Kazan (การใช้งาน Vulkan ในสนิม) ข้อเสียได้แก่ ความซับซ้อนที่เพิ่มขึ้นของระบบบิลด์ การไม่เต็มใจที่จะเชื่อมโยงกับระบบแพ็คเกจคาร์โก้ ข้อกำหนดเพิ่มเติมสำหรับสภาพแวดล้อมบิลด์ และความจำเป็นในการรวมคอมไพเลอร์ Rust ในการขึ้นต่อกันของบิลด์ที่จำเป็นในการสร้างส่วนประกอบเดสก์ท็อปหลักบน Linux

นอกจากนี้ เรายังสังเกตการทำงานด้านการพัฒนาไดรเวอร์ Nouveau ซึ่งดำเนินการโดย Carol Herbst ได้เช่นกัน ไดรเวอร์ Nouveau ได้เพิ่มการรองรับ OpenGL พื้นฐานสำหรับ GNU NVIDIA GeForce RTX 30xx ที่ใช้สถาปัตยกรรมไมโคร Ampere ซึ่งเปิดตัวตั้งแต่เดือนพฤษภาคม 2020 การเปลี่ยนแปลงที่เกี่ยวข้องกับการรองรับชิปใหม่จะรวมอยู่ในเคอร์เนล Linux 6.2 และ Mesa 22.3

ที่มา: opennet.ru

เพิ่มความคิดเห็น