Liberazione di Mesa 21.2, una implementazione libera di OpenGL è Vulkan

Dopu trè mesi di sviluppu, a liberazione di una implementazione libera di l'API OpenGL è Vulkan - Mesa 21.2.0 - hè stata publicata. A prima liberazione di u ramu Mesa 21.2.0 hà un statutu sperimentale - dopu a stabilizazione finale di u codice, una versione stabile 21.2.1 serà liberata.

Mesa 21.2 include un supportu cumpletu per OpenGL 4.6 per i driver 965, iris (Intel), radeonsi (AMD), zink è llvmpipe. U supportu OpenGL 4.5 hè dispunibule per GPU AMD (r600) è NVIDIA (nvc0), è supportu OpenGL 4.3 per virgl (GPU virtuale Virgil3D per QEMU / KVM). U supportu Vulkan 1.2 hè dispunibule per e carte Intel è AMD, è ancu in modalità emulatore (vn), u supportu Vulkan 1.1 hè dispunibule per i GPU Qualcomm è u rasterizer di software lavapipe, è Vulkan 1.0 hè dispunibule per i GPU Broadcom VideoCore VI (Raspberry Pi 4) .

Innuvazioni principali:

  • U driver asahi OpenGL hè inclusu cù supportu iniziale per a GPU inclusa in chips Apple M1. U driver usa l'interfaccia Gallium è sustene a maiò parte di e funzioni di OpenGL 2.1 è OpenGL ES 2.0, ma ùn hè ancu adattatu per eseguisce a maiò parte di i ghjochi. U codice di u driver hè basatu annantu à u driver noop di riferimentu Gallium, cù qualchì codice purtatu da u driver Panfrost sviluppatu per a GPU ARM Mali.
  • U driver Crocus OpenGL hè inclusu cù supportu per i GPU Intel più vechji (basatu nantu à microarchitetture Gen4-Gen7), chì ùn sò micca supportati da u driver Iris. A cuntrariu di u driver i965, u novu driver hè basatu annantu à l'architettura Gallium3D, chì esternalizza i travaglii di gestione di memoria à u driver DRI in u kernel Linux è furnisce un tracker di statu prontu cù supportu per una cache di reutilizazione di l'oggetti di output.
  • U driver PanVk hè inclusu, chì furnisce supportu per l'API grafica Vulkan per ARM Mali Midgard è Bifrost GPU. PanVk hè sviluppatu da l'impiegati di Collabora è hè posizionatu cum'è una continuazione di u sviluppu di u prughjettu Panfrost, chì furnisce supportu per OpenGL.
  • U driver Panfrost per GPU Midgard (Mali T760 è più recente) è GPU Bifrost (Mali G31, G52, G76) supporta OpenGL ES 3.1. I piani futuri includenu u travagliu per aumentà u rendiment nantu à i chips Bifrost è l'implementazione di supportu GPU basatu annantu à l'architettura Valhall (Mali G77 è più recente).
  • I build x32 86-bit usanu struzzioni sse87 invece di struzzioni x2 per i calculi matematichi.
  • U driver Nouveau nv50 per a GPU NVIDIA GT21x (GeForce GT 2×0) supporta OpenGL ES 3.1.
  • U driver Vulkan TURNIP è u driver OpenGL Freedreno, sviluppatu per a GPU Qualcomm Adreno, anu supportu iniziale per a GPU Adreno a6xx gen4 (a660, a635).
  • U RADV (AMD) Vulkan driver hà aghjustatu supportu per l'abbattimentu primitivu utilizendu i motori shader NGG (Next-Gen Geometry). A capacità di custruisce u driver RADV nantu à a piattaforma Windows cù u compilatore MSVC hè stata implementata.
  • U travagliu preparatoriu hè statu realizatu in u driver ANV Vulkan (Intel) è u driver Iris OpenGL per furnisce un supportu per i prossimi schede grafiche Intel Xe-HPG (DG2). Questu include caratteristiche iniziali relative à u tracciamentu di raggi è u supportu per i sfumaturi di traccia di ray.
  • U driver lavapipe, chì implementa un rasterizer software per l'API Vulkan (analogicu à llvmpipe, ma per Vulkan, traduce l'appelli di l'API Vulkan à l'API Gallium), supporta u modu "wideLines" (furnisce supportu per e linee cù una larghezza chì supera 1.0).
  • U supportu per a scuperta dinamica è a carica di backends alternativi GBM (Generic Buffer Manager) hè statu implementatu. U cambiamentu hè destinatu à migliurà u supportu Wayland nantu à i sistemi cun driver NVIDIA.
  • U driver Zink (una implementazione di l'API OpenGL in cima à Vulkan, chì permette di ottene l'accelerazione di hardware OpenGL se u sistema hà driver limitati à supportà solu l'API Vulkan) supporta l'estensioni OpenGL GL_ARB_sample_locations, GL_ARB_sparse_buffer, GL_ARB_shader_group_vote, GL_ARB_CAR_maxure è GL_AR_Blocker_max. Aggiunti modificatori di furmatu DRM (Gestione di Rendering Direttu, estensione VK_EXT_image_drm_format_modifier attivata).
  • U supportu per l'estensioni hè statu aghjuntu à i driver Vulkan RADV (AMD), ANV (Intel) è lavapipe:
    • VK_EXT_provoking_vertex (RADV);
    • VK_EXT_extended_dynamic_state2 (RADV);
    • VK_EXT_global_priority_query (RADV);
    • VK_EXT_physical_device_drm (RADV);
    • VK_KHR_shader_subgroup_uniform_control_flow (RADV, ANV);
    • VK_EXT_color_write_enable (RADV);
    • VK_EXT_acquire_drm_display (RADV, ANV);
    • VK_EXT_vertex_input_dynamic_state(lavapipe);
    • VK_EXT_line_rasterization (lavapipe);
    • VK_EXT_multi_draw(ANV, lavapipe, RADV);
    • VK_KHR_separate_depth_stencil_layouts (lavapipe);
    • VK_EXT_separate_stencil_usage (lavapipe);
    • VK_EXT_extended_dynamic_state2 (lavapipe).

Source: opennet.ru

Add a comment