Κυκλοφορία του Mesa 20.1.0, μια δωρεάν εφαρμογή των OpenGL και Vulkan

Εισήχθη κυκλοφορία μιας δωρεάν υλοποίησης του OpenGL και του Vulkan API - Mesa 20.1.0. Η πρώτη έκδοση του κλάδου Mesa 20.1.0 έχει πειραματική κατάσταση - μετά την τελική σταθεροποίηση του κώδικα, θα κυκλοφορήσει μια σταθερή έκδοση 20.1.1. Στο Μέσα 20.1 εφαρμόστηκε πλήρη υποστήριξη OpenGL 4.6 για Intel (i965, iris) και AMD (radeonsi), υποστήριξη OpenGL 4.5 για GPU AMD (r600) και NVIDIA (nvc0), OpenGL 4.3 για virgl (εικονική GPU Virgil3D για QEMU/KVM), καθώς και υποστήριξη Vulkan 1.2 για κάρτες Intel και AMD.

Μεταξύ αλλαγές:

  • Προστέθηκε Ένα ενεργό επίπεδο επιλογής συσκευής για το Vulkan API σε συστήματα με πολλαπλές GPU με δυνατότητα Vulkan, που λειτουργεί παρόμοια με το DRI_PRIME για OpenGL. Για να επιλέξετε το ενεργό πρόγραμμα οδήγησης και GPU, παρέχεται η μεταβλητή περιβάλλοντος MESA_VK_DEVICE_SELECT (εάν δεν είναι εγκατεστημένη, χρησιμοποιείται DRI_PRIME).
  • Η υποστήριξη για τσιπ που αναμένεται το επόμενο έτος με βάση τη νέα μικροαρχιτεκτονική προστέθηκε στα προγράμματα οδήγησης i965 και iris για τις επεξεργαστές Intel GPU Λίμνη πυραύλων.
  • Το πρόγραμμα οδήγησης ANV Vulkan που αναπτύσσεται για επεξεργαστές Intel GPU προστέθηκε βελτιστοποίηση για τσιπ με βάση τη μικροαρχιτεκτονική Icelake (Gen11), επιτρέποντας τη χρήση καθαρών χρωμάτων κατά την υφή. Όταν δοκιμάστηκε στο Dota2, η αλλαγή μείωσε τον αριθμό των λειτουργιών μετατροπής χρώματος κατά 95% και αύξησε την απόδοση κατά 3.5%.
  • Στο πρόγραμμα οδήγησης Vulkan ANV αυξήθηκε αποτελεσματικότητα της χρήσης της προσωρινής μνήμης σε συστήματα με τσιπ Intel Ivybridge και Haswell. Η χρήση των δοκιμών συνάρτησης υπολογισμού Vulkan από το Geekbench 5 έδειξε αύξηση απόδοσης 330% στο υλικό Haswell GT3 (αύξηση λόγω του γεγονότος ότι προηγουμένως η κρυφή μνήμη δεν χρησιμοποιήθηκε σε ορισμένες συνθήκες).
  • Προγράμματα οδήγησης για Intel GPU (i965, Ίρις) προστέθηκε Λειτουργία «μαύρης τρύπας» (επέκταση OpenGL INTEL_blackhole_render), η οποία απενεργοποιεί όλες τις λειτουργίες απόδοσης που μεταδίδονται από την GPU, αλλά διατηρεί την επεξεργασία των λειτουργιών OpenGL.
  • Η υποστήριξη Vectorization που είχε προστεθεί προηγουμένως για τσιπ AMD έχει μεταφερθεί για τσιπ γραφικών Intel Επέκταση NIR, μια άτυπη ενδιάμεση αναπαράσταση (IR) των shaders που στοχεύει στην εργασία στο χαμηλότερο επίπεδο, κάτω από το GLSL IR και το εσωτερικό IR της Mesa. Από την πρακτική πλευρά, λόγω της καλύτερης βελτιστοποίησης των shaders, η αλλαγή κατέστησε δυνατή την αύξηση της απόδοσης των OpenGL και Vulkan σε πολλά παιχνίδια σε συστήματα με GPU της Intel. Για παράδειγμα, στο παιχνίδι
    Άνοδος του Tomb Raider γιορτάζεται αύξηση απόδοσης κατά 3% και στο Shadow of the Tomb Raider κατά 10%.

  • Στο backend για τη μεταγλώττιση shaders "ACO", το οποίο αναπτύσσεται από τη Valve ως εναλλακτική του μεταγλωττιστή shader LLVM, έχει προστεθεί υποστήριξη για τον τύπο shaderInt9 για την GPU GFX16+, επιτρέποντας τη χρήση ακεραίων 16-bit στον κώδικα shader. Για
    GPU AMD Navi (GFX10) εξασφαλισμένη χρήση κινητήρων NGG (Next-Gen Geometry) όταν εργάζεστε με σκίαστρες κορυφής και tessellation.

  • Για GPU AMD Navi 12 και Navi 14 περιλαμβάνεται υποστήριξη για την εμφανιζόμενη λειτουργία DCC (Delta Color Compression), η οποία διασφαλίζει την εργασία με συμπιεσμένα δεδομένα χρώματος κατά την οργάνωση της εξόδου της οθόνης.
  • Προστέθηκε πειραματική υποστήριξη NIR για το κλασικό πρόγραμμα οδήγησης Gallium3D R600 (AMD Radeon HD 2000-6000) με υποστήριξη για γεωμετρικά, θραύσματα, κορυφή και ψηφίδωση σκίαστρες.
  • Vulkan RADV πρόγραμμα οδήγησης προστέθηκε Μια ενημέρωση κώδικα που βελτιώνει την απόδοση των παιχνιδιών Id Tech σε συστήματα με APU AMD βελτιστοποιώντας τη διαχείριση μνήμης.
  • Στο πρόγραμμα οδήγησης Panfrost εφαρμόστηκε πειραματική υποστήριξη για OpenGL ES 3.0 και εξασφαλισμένη Υποστήριξη απόδοσης 3D για Bifrost GPU (Mali G31). Έχει προετοιμαστεί μια αρχική υλοποίηση ενός μεταγλωττιστή shader που υποστηρίζει ένα σύνολο εσωτερικών οδηγιών ειδικά για την GPU Bifrost.
  • Το πρόγραμμα οδήγησης Vulkan TURNIP, που αναπτύχθηκε για GPU Qualcomm Adreno, προστέθηκε υποστήριξη για σκίαστρες γεωμετρίας και Τσιπς Adreno 650.
  • Στο πρόγραμμα οδήγησης Gallium3D LLVMpipe, το οποίο παρέχει απόδοση λογισμικού, εμφανίστηκε υποστήριξη για tessellation shaders.
  • Εισήχθη большая μια μερίδα βελτιστοποιήσεις στο glthread (πολυνηματική υλοποίηση του OpenGL). Μετά την πραγματοποίηση των αλλαγών, η απόδοση του προσομοιωτή αγώνων Torcs αυξήθηκε κατά 16% στην προεπιλεγμένη διαμόρφωση και κατά 40% όταν ενεργοποιήθηκε το glthread.
  • Προστέθηκε Επιλογή allow_draw_out_of_order (ενεργοποιημένη μέσω driconf) για την ενεργοποίηση βελτιστοποιήσεων για την επιτάχυνση των λειτουργιών σχεδίασης εκτός σειράς ειδικά για το CAD. Όταν αυτή η επιλογή είναι ενεργοποιημένη, παρατηρείται επιτάχυνση 11% στη δοκιμή Viewperf7 Catia.
  • Προστέθηκαν νέες επεκτάσεις OpenGL:
  • Προστέθηκαν επεκτάσεις στο πρόγραμμα οδήγησης RADV Vulkan (για κάρτες AMD):
  • Προστέθηκαν επεκτάσεις στο πρόγραμμα οδήγησης ANV Vulkan (για κάρτες Intel):

    Πηγή: opennet.ru

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