Release van Mesa 22.0, een gratis implementatie van OpenGL en Vulkan

Na vier maanden ontwikkeling werd de release van een gratis implementatie van de OpenGL- en Vulkan-API's - Mesa 22.0.0 - gepubliceerd. De eerste release van de Mesa 22.0.0-tak heeft een experimentele status - na de definitieve stabilisatie van de code zal een stabiele versie 22.0.1 worden uitgebracht. De nieuwe release valt op door de implementatie van de Vulkan 1.3 grafische API in de anv-driver voor Intel GPU's en radv voor AMD GPU's.

Ondersteuning voor Vulkan 1.2 is beschikbaar in emulator (vn)-modus, ondersteuning voor Vulkan 1.1 is beschikbaar voor Qualcomm (tu) GPU's en lavapipe-software rasterizer, en ondersteuning voor Vulkan 1.0 is beschikbaar voor Broadcom VideoCore VI (Raspberry Pi 4) GPU's. Mesa 22.0 biedt ook volledige OpenGL 4.6-ondersteuning voor de 965-, iris (Intel), radeonsi (AMD), zink- en llvmpipe-stuurprogramma's. OpenGL 4.5-ondersteuning is beschikbaar voor AMD (r600) en NVIDIA (nvc0) GPU's, en OpenGL 4.3-ondersteuning voor virgl (virgil3D virtuele GPU voor QEMU/KVM) en vmwgfx (VMware).

Belangrijkste innovaties:

  • Ondersteuning toegevoegd voor Vulkan 1.3 grafische API.
  • De code voor klassieke OpenGL-stuurprogramma's die de Gallium3D-interface niet gebruiken, is verplaatst van de hoofdmesa naar een aparte tak "Amber", inclusief de i915- en i965-stuurprogramma's voor Intel GPU's, r100 en r200 voor AMD GPU's en Nouveau voor NVIDIA GPU's. De SWR-driver, die een OpenGL-software-rasterizer aanbood op basis van het Intel OpenSWR-project, werd ook verplaatst naar de “Amber” -tak. De klassieke xlib-bibliotheek is uitgesloten van de hoofdstructuur, in plaats daarvan wordt aanbevolen om de gallium-xlib-variant te gebruiken.
  • Het Gallium-stuurprogramma D3D12 met een laag voor het organiseren van OpenGL-werk bovenop de DirectX 12 API (D3D12) zorgt voor compatibiliteit met OpenGL ES 3.1. Het stuurprogramma wordt in de WSL2-laag gebruikt om grafische Linux-applicaties op Windows uit te voeren.
  • Ondersteuning voor Intel Alderlake (S en N)-chips is toegevoegd aan de OpenGL-driver "iris" en Vulkan-driver "ANV".
  • Intel GPU-stuurprogramma's bieden standaard ondersteuning voor Adaptive-Sync (VRR)-technologie, waardoor u de vernieuwingsfrequentie van de monitor adaptief kunt wijzigen voor een vloeiende, storingsvrije weergave.
  • De RADV Vulkan-driver (AMD) blijft ondersteuning voor ray tracing en shaders voor ray tracing implementeren.
  • Het v3dv-stuurprogramma, ontwikkeld voor de VideoCore VI grafische versneller, gebruikt vanaf het Raspberry Pi 4-model, biedt de mogelijkheid om op het Android-platform te werken.
  • Voor EGL is een ‘dma-buf feedback’-mechanisme geïmplementeerd, dat aanvullende informatie geeft over de beschikbare GPU’s en het mogelijk maakt om de efficiëntie van de gegevensuitwisseling tussen de hoofd- en secundaire GPU te vergroten, bijvoorbeeld om de uitvoer te organiseren zonder tussentijdse buffering.
  • OpenGL 3-ondersteuning is toegevoegd aan de vmwgfx-driver, die wordt gebruikt om 4.3D-versnelling in VMware-omgevingen te implementeren.
  • Ondersteuning voor extensies is toegevoegd aan de Vulkan-drivers RADV (AMD), ANV (Intel) en zink (OpenGL over Vulkan):
    • VK_KHR_dynamische_weergave (lavapijp,radv,anv)
    • VK_EXT_image_view_min_lod (radv) KHR_synchronisatie2.txt VK_KHR_synchronisatie2]] (radv)
    • VK_EXT_memory_object (zink)
    • VK_EXT_memory_object_fd (zink)
    • VK_EXT_semafoor (zink)
    • VK_EXT_semafoor_fd (zink)
    • VK_VALVE_mutable_descriptor_type (zink)
  • Nieuwe OpenGL-extensies toegevoegd:
    • 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

    Bron: opennet.ru

Voeg een reactie