Σε μια προσπάθεια να ξεκινήσει το παιχνίδι Halo Infinite σε Linux μέσω Steam Play (Proton) με επεξεργαστές γραφικών εποχής AMD GFX6/GCN 1.0, ο παραγωγός προγράμματος οδήγησης ανοιχτού κώδικα της Valve, Samuel Pitoiset, πρόσθεσε υποστήριξη VK_NV_device_generated_commands για αυτά τα πρωτότυπα GPU Radeon.

Ο Samuel Pitoiset απέκτησε υποστήριξη προγραμμάτων οδήγησης Mesa RADV για NV_device_generated_commands σε GFX6 GPU. Το VK_NV_device_generated_commands είναι η επέκταση NVIDIA που επιτρέπει τη δημιουργία ενός αριθμού κρίσιμων εντολών γραφικών για buffer εντολών. Σύμφωνα με την επέκταση προδιαγραφή:

“Κατά την απόδοση ενός μεγάλου αριθμού αντικειμένων, η συσκευή μπορεί να αξιοποιηθεί για την υλοποίηση ενός αριθμού κρίσιμων λειτουργιών, όπως η ενημέρωση πινάκων ή η εφαρμογή απομάκρυνσης απόφραξης, απομάκρυνσης frustum, ταξινόμησης από μπροστά προς τα πίσω κ.λπ. Η εφαρμογή αυτών στη συσκευή δεν απαιτεί οποιαδήποτε ειδική επέκταση, καθώς μια εφαρμογή είναι ελεύθερη να ορίσει τις δικές της δομές δεδομένων και απλώς να τις επεξεργάζεται χρησιμοποιώντας shaders.

Ωστόσο, εάν η εφαρμογή επιθυμεί να ξεκινήσει γρήγορα την απόδοση της τελικής ροής αντικειμένων, τότε το μη εκτεταμένο Vulkan αναγκάζει το εφαρμογή για την ανάγνωση της επεξεργασμένης ροής και την έκδοση εντολής γραφικών από τον κεντρικό υπολογιστή. Για πολύ μεγάλες σκηνές, η επιβάρυνση του συγχρονισμού και το κόστος δημιουργίας του buffer εντολών μπορεί να γίνουν το σημείο συμφόρησης. Αυτή η επέκταση επιτρέπει σε μια εφαρμογή να δημιουργήσει μια ροή από την πλευρά της συσκευής αλλαγών κατάστασης και εντολές και να το μετατρέψετε αποτελεσματικά σε buffer εντολών χωρίς να χρειάζεται να το διαβάσετε ξανά στον κεντρικό υπολογιστή.

Επιπλέον, επιτρέπει σταδιακές αλλαγές σε τέτοια buffer εντολών χειρίζοντας μόνο μερικά τμήματα μιας ροής εντολών— για παράδειγμα δεσμεύσεις αγωγών. Το μη εκτεταμένο Vulkan απαιτεί εκ νέου δημιουργία ολόκληρων buffer εντολών σε ένα τέτοιο σενάριο ή ενημερώσεις συγχρονισμένες στον κεντρικό υπολογιστή.”

Για την προσθήκη αυτής της επέκτασης στο GFX6, ο Pitoiset σχολίασε στο το αίτημα συγχώνευσης,”Απολαύστε την αναπαραγωγή του Halo Infinite στο GFX6.:-)”
Αργότερα όμως ενημέρωσε το κείμενο για να προσθέσει,”Ίσως όχι επειδή μπορεί να απαιτεί αραιό που είναι gfx8+:(“Άρα δεν είναι ξεκάθαρο τελικά αν θα μπορέσει να κάνει το Halo Infinite να τρέχει σε αυτές τις πρώιμες GPU GCN ελλείψει λύσης για την έλλειψη αραιής υφής. Σε κάθε περίπτωση, είναι ωραίο να βλέπουμε τους προγραμματιστές της Valve να εργάζονται για να βελτιώσουν την υποστήριξη για αυτές τις παλιές GPU. Το GFX6 καλύπτει τις GPU του Πράσινου Ακρωτηρίου, του Πίτκερν, της Ταϊτής, της Ολάντ και του Χαϊνάν.

Αυτή η υποστήριξη GFX6 NV_device_generated_commands βρίσκεται τώρα σε ανάπτυξη Mesa 23.2 για σταθερή κυκλοφορία το επόμενο τρίμηνο.

Categories: IT Info