Byl publikován grafický standard Vulkan 1.4

Po téměř třech letech práce zveřejnil konsorcium Khronos, které se zabývá vývojem grafických standardů, specifikaci Vulkan 1.4, určující API pro přístup ke grafickým a výpočetním schopnostem GPU. Nová specifikace zahrnuje nahromaděná rozšíření, která byla dříve označena jako volitelná, a také přináší řadu nových možností a zvyšuje minimální požadavky na hardware. Nástroje Vulkan SDK se plánují vydat v lednu 2025.

Produkty s podporou Vulkan 1.4 se chystají vydat společnosti AMD, Arm, Imagination, Intel, NVIDIA, Qualcomm a Samsung. Otevřené ovladače pro GPU AMD (radv), Apple M1/M2 (honeykrisp), Intel (anv), NVIDIA (nvk) a Qualcomm (tu), vyvíjené projektem Mesa, již úspěšně prošly všemi testy kompatibility s Vulkan 1.4 v rámci sady CTS (Khronos Conformance Test Suite) a jsou zahrnuty v seznamu certifikovaných ovladačů. V seznamu jsou také ovladače Samsung a Qualcomm pro platformu Android, stejně jako ovladače pro GPU PowerVR D-Series DXT* od společnosti Imagination Technologies a proprietární ovladače NVIDIA.

Hlavní novinky:

  • Byla přidána podpora mechanismu „Streaming Transfers“, který je určen pro zajištění streamovacího přenosu velkého objemu dat mezi hlavním systémem (hostitelem) a grafickým zařízením, aniž by se přerušil rendering nebo zpomalila jeho výkonnost. Mechanismus je realizován pomocí nového rozšíření VK_EXT_host_image_copy, jehož podpora je volitelná.
  • Do kategorie povinných funkcí byly zařazeny možnosti zaměřené na zvýšení výkonnosti:
    • Push Descriptors – možnost zapisovat aktualizace descriptorů přímo do příkazového bufferu místo vytváření samostatných sad descriptorů a jejich připojení k příkazovému bufferu.
    • VK_KHR_dynamic_rendering_local_read – umožňuje čtení z vnořených bufferů (attachments) a zdrojů zapsaných předchozími fragmentovými shadery v rámci dynamických průchodů renderování (render pass).
    • VK_EXT_scalar_block_layout – umožňuje používat strukturu podobnou jazyku C pro bloky SPIR-V, ve které lze zarovnávat neskalární typy na základě velikosti jejich komponent.
  • Mezi nimi jsou zahrnuta rozšíření VK_KHR_maintenance5 a VK_KHR_maintenance6, která poskytují pomocné příkazy a struktury pro zjednodušení správy zdrojů a shaderů.
  • Garantovaná podpora renderování s rozlišením 8K (7680 x 4320 pixelů) a s využitím až 8 nezávislých vyrovnávacích pamětí.
  • Součástí jsou rozšíření:
    • VK_KHR_global_priority
    • VK_KHR_index_type_uint8
    • VK_KHR_line_rasterization
    • VK_KHR_load_store_op_none
    • VK_KHR_map_memory2
    • VK_KHR_push_descriptor
    • VK_KHR_shader_expect_assume
    • VK_KHR_shader_float_controls2
    • VK_KHR_shader_subgroup_rotate
    • VK_KHR_vertex_attribute_divisor
    • VK_EXT_pipeline_protected_access
    • VK_EXT_pipeline_robustness
  • Mnoho dříve volitelných funkcí bylo převedeno mezi povinné.
  • Byla přidána velká část nových příkazů a struktur.

API Vulkan se vyznačuje radikálním zjednodušením ovladačů, přesunem generace příkazů GPU na stranu aplikace, možností připojení ladicích vrstev, unifikací API pro různé platformy a použitím předkompilovaného mezilehlého výstupu kódu pro vykonávání na straně GPU.

Pro zajištění vysokého výkonu a předvídatelnosti poskytuje Vulkan aplikacím prostředky pro přímé řízení operací GPU a vestavěnou podporu vícervozového zpracování příkazů GPU, což minimalizuje režijní náklady přenášené ovladačem. Možnosti, které jsou v OpenGL realizovány na straně ovladače, jsou v Vulkanu přesunuty na úroveň aplikace.

Vulkan pokrývá všechny dostupné platformy a poskytuje jednotné API pro desktopové, mobilní systémy a Web, což umožňuje používat jedno společné API pro různé grafické procesory a aplikační oblasti. Díky vícevrstvé architektuře Vulkan, která zahrnuje vytváření nástrojů pracujících s jakýmikoli GPU, mohou výrobci hardwaru při vývoji využívat standardizované nástroje pro kontrolu kódu, ladění a profilování.

Pro vytváření shaderů se nabízí přenosné mezilehlé zobrazení SPIR-V, založené na LLVM a využívající běžné základní technologie s OpenCL. S Vulkanem lze také použít jazyk shaderů HLSL, který se používá v DirectX, prostřednictvím jeho převodu na SPIR-V. Pro správu zařízení a obrazovek v Vulkanu je k dispozici rozhraní WSI (Window System Integration), které řeší přibližně stejné úkoly jako EGL v OpenGL ES. Podpora WSI je nativně dostupná ve Waylandu – všechny aplikace využívající Vulkan mohou běžet v prostředí nemodifikovaných. servery Wayland. Možnost práce přes WSI je také zajištěna pro Android, X11 (s DRI3), Windows, Tizen, macOS a iOS.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster