Το NVK, ένα πρόγραμμα οδήγησης Vulkan ανοιχτού κώδικα για κάρτες γραφικών NVIDIA, αποκαλύφθηκε

Η Collabora κυκλοφόρησε το NVK, ένα νέο πρόγραμμα οδήγησης ανοιχτού κώδικα για τη Mesa που υλοποιεί το API γραφικών Vulkan για κάρτες γραφικών NVIDIA. Το πρόγραμμα οδήγησης είναι γραμμένο από την αρχή χρησιμοποιώντας επίσημα αρχεία κεφαλίδας και ανοιχτές μονάδες πυρήνα που δημοσιεύονται από την NVIDIA. Ο κωδικός προγράμματος οδήγησης είναι ανοιχτού κώδικα βάσει της άδειας MIT. Το πρόγραμμα οδήγησης υποστηρίζει μόνο GPU που βασίζονται σε μικροαρχιτεκτονικές Turing και Ampere που κυκλοφόρησαν από τον Σεπτέμβριο του 2018.

Το έργο αναπτύσσεται από μια ομάδα που περιλαμβάνει τον Karol Herbst, προγραμματιστή Nouveau στη Red Hat, τον David Airlie, συντηρητή υποσυστήματος DRM στη Red Hat και τον Jason Ekstrand, ενεργό προγραμματιστή Mesa στην Collabora. Κατά την ανάπτυξη ενός νέου προγράμματος οδήγησης, τα βασικά στοιχεία του προγράμματος οδήγησης Nouveau OpenGL χρησιμοποιούνται κατά τόπους, αλλά λόγω των διαφορών στα ονόματα στα αρχεία κεφαλίδας NVIDIA και των ονομάτων αντίστροφης μηχανικής στο Nouveau, ο άμεσος δανεισμός κώδικα είναι δύσκολος και ως επί το πλείστον ήταν απαραίτητο να ξανασκεφτούμε πολλά πράγματα και να τα εφαρμόσουμε με το μηδέν.

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

Το πρόγραμμα οδήγησης NVK βρίσκεται υπό ανάπτυξη μόνο λίγους μήνες, επομένως η λειτουργικότητά του είναι περιορισμένη. Ο οδηγός περνά με επιτυχία το 98% των δοκιμών όταν εκτελεί το 10% των δοκιμών από το Vulkan CTS (Σουίτα Δοκιμών Συμβατότητας). Γενικά, η ετοιμότητα του οδηγού υπολογίζεται στο 20-25% της λειτουργικότητας των προγραμμάτων οδήγησης ANV και RADV. Όσον αφορά την υποστήριξη υλικού, το πρόγραμμα οδήγησης περιορίζεται επί του παρόντος σε κάρτες που βασίζονται σε μικροαρχιτεκτονικές Turing και Ampere. Γίνονται εργασίες για τις ενημερώσεις κώδικα για την υποστήριξη των GPU Kepler, Maxwell και Pascal, αλλά δεν είναι ακόμη έτοιμα.

Μακροπρόθεσμα, το πρόγραμμα οδήγησης NVK για κάρτες γραφικών NVIDIA αναμένεται να φτάσει σε επίπεδο ποιότητας και λειτουργικότητας παρόμοιο με το πρόγραμμα οδήγησης RADV για κάρτες AMD. Αφού είναι έτοιμο το πρόγραμμα οδήγησης NVK, οι κοινόχρηστες βιβλιοθήκες που δημιουργήθηκαν κατά την ανάπτυξή του μπορούν να χρησιμοποιηθούν για τη βελτίωση του προγράμματος οδήγησης Nouveau OpenGL για κάρτες γραφικών NVIDIA. Εξετάζεται επίσης η δυνατότητα χρήσης του έργου Zink για την υλοποίηση ενός πλήρους προγράμματος οδήγησης OpenGL για κάρτες βίντεο NVIDIA που λειτουργεί μέσω μετάφρασης κλήσεων στο Vulkan API.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο