ในขณะที่เพิ่งพูดคุยเกี่ยวกับ Nouveau ที่เริ่มใช้งาน GeForce RTX 30″Ampere”open-source support นั้นน่าตื่นเต้น ดังที่ได้กล่าวไปแล้วยังคงมีอุปสรรคที่จะเอาชนะสำหรับการมีไดรเวอร์ NVIDIA แบบโอเพ่นซอร์สที่ดีบน GPU ที่ทันสมัย ข่าวที่น่าตื่นเต้นไม่แพ้กันก็คือ Nouveau ได้เริ่มปรับโค้ดบางส่วนของพวกเขาให้เป็นไลบรารีแบบสแตนด์อโลน เพื่อให้ไดรเวอร์ใหม่คนอื่นๆ สามารถใช้โค้ดนี้ได้ในอนาคต
ช่วงไม่กี่วันที่ผ่านมาได้เห็นการทำงานในการปรับโครงสร้างโค้ดของไดรเวอร์ Nouveau Mesa รอบการสร้างโค้ดเพื่อให้สามารถอยู่ในไลบรารีแบบสแตนด์อโลนได้
นี่เป็นเพียงการสรุปโดย David Airlie แห่ง Red Hat ในเวลานี้ว่า”นี่เป็นเพียงการย้าย codegen build ไปสู่ไลบรารีที่แยกจากกัน นี่เป็นเพียงการเตรียมงานสำหรับอนาคตที่ผู้ขับขี่รายอื่นต้องการใช้รหัสนี้ซ้ำ มันไม่สมบูรณ์แบบสำหรับการเสียบเข้ากับไดรเวอร์ vulkan แต่การทำเช่นนั้นต้องใช้การผ่าตัดในเชิงลึกมากขึ้น”
การใช้งานที่เป็นไปได้มากที่สุดกับไลบรารีแบบสแตนด์อโลนนี้ ได้แก่:
-การทำงานกับไดรเวอร์ Nouveau Vulkan ในขณะที่แชร์การสร้างโค้ดคอมไพเลอร์ shader ระหว่างไดรเวอร์… นอกจากประสิทธิภาพแล้ว การขาดไดรเวอร์ NVIDIA Vulkan แบบโอเพ่นซอร์สเป็นหนึ่งใน จุดเจ็บที่ยิ่งใหญ่สำหรับความพยายามของ Nouveau ในปี 2022 กับเกม Linux ส่วนใหญ่ไม่ว่าจะโดยกำเนิดหรือโดยทาง Steam Play ที่สามารถใช้ Vulkan API ได้
-การทำงานกับไดรเวอร์ Mesa ใหม่เพื่อใช้ไดรเวอร์เคอร์เนลแบบโอเพนซอร์สของ NVIDIA ล่าสุด นี้เป็นไปได้มากเช่นกัน โดยพื้นฐานแล้วด้วยอินเทอร์เฟซเคอร์เนลที่เปลี่ยนแปลงทั้งหมดเมื่อเปรียบเทียบไดรเวอร์ Nouveau DRM/KMS กับไดรเวอร์เคอร์เนลใหม่ของ NVIDIA ที่พวกเขาทำงานอยู่ การเริ่มต้นจากกระดานชนวนที่สะอาดกว่า/การเปลี่ยนรหัสไดรเวอร์ Nouveau เป็นไดรเวอร์ใหม่ที่แยกจากกันอย่างชัดเจน กำหนดเป้าหมายที่ไดรเวอร์เคอร์เนลใหม่ ไดรเวอร์ใหม่นี้ยังสามารถมุ่งเน้นไปที่ทัวริงที่ใหม่กว่าและมากกว่า GPU ที่สนับสนุนโดยไดรเวอร์เคอร์เนลนั้นและกำจัดการสนับสนุนเก่า/ดั้งเดิมและ cruft อื่น ๆ ที่สร้างขึ้นภายในรหัส Nouveau Mesa ในช่วงหลายปีที่ผ่านมา
หรืออาจเป็นไปได้ทั้งสองสถานการณ์
ตามที่อธิบายไว้ในบทความโอเพนซอร์ซของ NVIDIA ก่อนหน้านี้ หาก NVIDIA ต้องการรับไดรเวอร์เคอร์เนลโอเพ่นซอร์สใหม่ซึ่งถูกนำไปใช้กับเคอร์เนลอัพสตรีมในท้ายที่สุด พวกเขาจะต้องใช้ไดรเวอร์พื้นที่ผู้ใช้แบบโอเพ่นซอร์สที่ ใช้อินเทอร์เฟซเคอร์เนลที่ถูกเปิดเผยทั้งหมด… ด้วยเหตุที่ไม่น่าเป็นไปได้ที่ NVIDIA จะเปิดโอเพนซอร์สไดรเวอร์โอเพ่นซอร์ส OpenGL หรือ Vulkan ผ่านวิศวกรของ NVIDIA และพันธมิตร Red Hat ของพวกเขา พวกเขาจะต้องใช้ไดรเวอร์ Mesa ของไดรเวอร์เคอร์เนลใหม่นี้ ไม่ว่าจะเป็นการปรับโค้ด Nouveau Gallium3D ที่มีอยู่เพื่อรองรับไดรเวอร์เคอร์เนลนั้น หรือตัดสินจากการปรับโครงสร้างโค้ด Mesa นี้อาจมาในรูปแบบของไดรเวอร์ Mesa ใหม่
ในกรณีใดๆ การเปลี่ยนแปลงที่รอดำเนินการเพื่อย้าย Nouveau การสร้างโค้ดในไลบรารีแบบสแตนด์อโลนเป็นเพียงขั้นตอนแรกเล็กๆ ของความพยายามที่ยิ่งใหญ่กว่ามากในการนำไดรเวอร์ NVIDIA โอเพ่นซอร์สใหม่ขึ้นมาภายใน Mesa อย่างที่เป็นอยู่ทุกวันนี้ โค้ดที่รอดำเนินการนั้นไม่มีผลกระทบต่อผู้ใช้ปลายทางในทันที อย่างน้อยก็เกิดขึ้นและ Red Hat ยังคงเป็นพันธมิตรกับ NVIDIA ในการพยายามไดรเวอร์โอเพนซอร์ซเป็นเวลาหลายปีนี้
ในขณะที่เกี่ยวกับไดรเวอร์เคอร์เนล DRM/KMS ต้นทางของ Nouveau ยังไม่มีงานสำคัญใดๆ ที่ต้องรายงานในช่วงที่ผ่านมา เป็นไปได้มากกว่าที่เราจะเห็นว่าไดรเวอร์นั้นซบเซาและยังคงอยู่สำหรับผู้ที่ใช้ GPU แบบ pre-Turing ที่ต้องการใช้ไดรเวอร์โอเพนซอร์ซ… โปรดจำไว้ว่า ไดรเวอร์นี้ใช้งานได้จริงและมีประสิทธิภาพสำหรับ GeForce GTX 600/700″Kepler”GPUs และ GTX 750″Maxwell1″hardware ที่สามารถทำ re-clocking ได้เพื่อให้ทำงานได้อย่างมีประสิทธิภาพสูงสุด วิศวกรของ Red Hat เป็นผู้สนับสนุนหลักในไดรเวอร์เคอร์เนล Nouveau ในช่วงหลายปีที่ผ่านมา และหากพวกเขามุ่งเน้นทรัพยากรทั้งหมดของตนไปที่ไดรเวอร์เคอร์เนลโอเพ่นซอร์ส NVIDIA รุ่นใหม่นี้ อย่าคาดหวังกิจกรรมโค้ดในอนาคตที่จะเกิดขึ้นกับโอเพ่น-แหล่งที่มา ไดรเวอร์เคอร์เนลที่วิศวกรรมย้อนกลับ
คอยติดตาม Phoronix เนื่องจากความพยายามของไดรเวอร์โอเพ่นซอร์สของ NVIDIA ที่ทันสมัยพัฒนาขึ้น-ยังคงน่าจะใช้เวลาหลายเดือนกว่าที่ไดรเวอร์เคอร์เนลโอเพ่นซอร์สของ NVIDIA จะเป็นตัวเลือกสำหรับการ mainlining เข้าสู่เคอร์เนล