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

Μετά από τέσσερις μήνες ανάπτυξης, δημοσιεύτηκε η κυκλοφορία μιας δωρεάν υλοποίησης των OpenGL και Vulkan API - Mesa 22.0.0. Η πρώτη έκδοση του κλάδου Mesa 22.0.0 έχει πειραματική κατάσταση - μετά την τελική σταθεροποίηση του κώδικα, θα κυκλοφορήσει μια σταθερή έκδοση 22.0.1. Η νέα έκδοση είναι αξιοσημείωτη για την εφαρμογή του API γραφικών Vulkan 1.3 στο πρόγραμμα οδήγησης anv για τις GPU της Intel και το radv για τις GPU της AMD.

Η υποστήριξη Vulkan 1.2 είναι διαθέσιμη σε λειτουργία εξομοιωτή (vn), η υποστήριξη Vulkan 1.1 είναι διαθέσιμη για GPU Qualcomm (tu) και ραστεροποιητής λογισμικού lavapipe και η υποστήριξη Vulkan 1.0 είναι διαθέσιμη για GPU Broadcom VideoCore VI (Raspberry Pi 4). Το Mesa 22.0 παρέχει επίσης πλήρη υποστήριξη OpenGL 4.6 για τα προγράμματα οδήγησης 965, iris (Intel), radeonsi (AMD), zink και llvmpipe. Η υποστήριξη OpenGL 4.5 είναι διαθέσιμη για GPU AMD (r600) και NVIDIA (nvc0) και υποστήριξη OpenGL 4.3 για virgl (Virgil3D εικονική GPU για QEMU/KVM) και vmwgfx (VMware).

Βασικές καινοτομίες:

  • Προστέθηκε υποστήριξη για το API γραφικών Vulkan 1.3.
  • Ο κώδικας για τα κλασικά προγράμματα οδήγησης OpenGL που δεν χρησιμοποιούν τη διεπαφή Gallium3D έχει μετακινηθεί από το κύριο Mesa σε έναν ξεχωριστό κλάδο "Amber", συμπεριλαμβανομένων των προγραμμάτων οδήγησης i915 και i965 για τις επεξεργαστές Intel GPU, r100 και r200 για GPU της AMD και Nouveau για GPU της NVIDIA. Το πρόγραμμα οδήγησης SWR, το οποίο προσέφερε έναν ραστεροποιητή λογισμικού OpenGL με βάση το έργο Intel OpenSWR, μεταφέρθηκε επίσης στον κλάδο "Amber". Η κλασική βιβλιοθήκη xlib εξαιρείται από την κύρια δομή, αντί της οποίας συνιστάται η χρήση της παραλλαγής gallium-xlib.
  • Το πρόγραμμα οδήγησης Gallium D3D12 με ένα στρώμα για την οργάνωση εργασίας OpenGL πάνω από το DirectX 12 API (D3D12) διασφαλίζει τη συμβατότητα με το OpenGL ES 3.1. Το πρόγραμμα οδήγησης χρησιμοποιείται στο επίπεδο WSL2 για την εκτέλεση εφαρμογών γραφικών Linux στα Windows.
  • Υποστήριξη για τσιπ Intel Alderlake (S και N) έχει προστεθεί στο πρόγραμμα οδήγησης OpenGL "iris" και πρόγραμμα οδήγησης Vulkan "ANV".
  • Τα προγράμματα οδήγησης Intel GPU περιλαμβάνουν υποστήριξη για την τεχνολογία Adaptive-Sync (VRR) από προεπιλογή, επιτρέποντάς σας να αλλάζετε προσαρμοστικά τον ρυθμό ανανέωσης της οθόνης σας για ομαλή, χωρίς σκισίματα οθόνη.
  • Το πρόγραμμα οδήγησης RADV Vulkan (AMD) συνεχίζει να εφαρμόζει υποστήριξη για ανίχνευση ακτίνων και σκίαστρα για ανίχνευση ακτίνων.
  • Το πρόγραμμα οδήγησης v3dv, που αναπτύχθηκε για τον επιταχυντή γραφικών VideoCore VI, που χρησιμοποιείται ξεκινώντας από το μοντέλο Raspberry Pi 4, παρέχει τη δυνατότητα εργασίας στην πλατφόρμα Android.
  • Για το EGL, υλοποιείται ένας μηχανισμός "dma-buf feedback", ο οποίος παρέχει πρόσθετες πληροφορίες σχετικά με τις διαθέσιμες GPU και καθιστά δυνατή την αύξηση της αποτελεσματικότητας της ανταλλαγής δεδομένων μεταξύ της κύριας και της δευτερεύουσας GPU, για παράδειγμα, για την οργάνωση της εξόδου χωρίς ενδιάμεσο buffer.
  • Η υποστήριξη OpenGL 3 έχει προστεθεί στο πρόγραμμα οδήγησης vmwgfx, που χρησιμοποιείται για την υλοποίηση της επιτάχυνσης 4.3D σε περιβάλλοντα VMware.
  • Έχει προστεθεί υποστήριξη για επεκτάσεις στα προγράμματα οδήγησης Vulkan RADV (AMD), ANV (Intel) και zink (OpenGL μέσω Vulkan):
    • VK_KHR_dynamic_rendering (lavapipe,radv,anv)
    • VK_EXT_image_view_min_lod (radv) KHR_synchronization2.txt VK_KHR_synchronization2]] (radv)
    • VK_EXT_memory_object (zink)
    • VK_EXT_memory_object_fd (zink)
    • VK_EXT_semaphore (zink)
    • VK_EXT_semaphore_fd (zink)
    • VK_VALVE_mutable_descriptor_type (zink)
  • Προστέθηκαν νέες επεκτάσεις OpenGL:
    • GL_ARB_sparse_texture (radeonsi, zink)
    • GL_ARB_sparse_texture2 (radeonsi, zink)
    • GL_ARB_sparse_texture_clamp (radeonsi, zink)
    • GL_ARB_framebuffer_no_attachments
    • GL_ARB_sample_shading

    Πηγή: opennet.ru

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