Është publikuar standardi grafik Vulkan 1.4

Pas hampir tre vite pune, konsorciumi Khronos, i angazhuar në zhvillimin e standardeve grafike, publikoi specifikimin Vulkan 1.4, që përcakton API për qasje në mundësitë grafike dhe llogaritëse të GPU. Specifikimi i ri përfshiu zgjerimet e akumuluara, të cilat më parë ishin pozicionuar si opsionale, si dhe ofroi një sërë mundësish të reja dhe rriti kërkesat minimale për pajisjen. Vegla Vulkan SDK planifikohet të publikohet në janar 2025.

Produktet me mbështetje për Vulkan 1.4 janë duke u përgatitur për t'u lëshuar nga kompanitë AMD, Arm, Imagination, Intel, NVIDIA, Qualcomm dhe Samsung. Drivet e hapura për GPU AMD (radv), Apple M1/M2 (honeykrisp), Intel (anv), NVIDIA (nvk) dhe Qualcomm (tu), të zhvilluara nga projekti Mesa, tashmë kanë kaluar të gjitha testet e përputhshmërisë me Vulkan 1.4 nga seti CTS (Khronos Conformance Test Suite) dhe janë përfshirë në listën e drivet të certifikuara. Në listë përfshihen gjithashtu driverat e Samsung dhe Qualcomm për platformën Android, si dhe driverat për GPU PowerVR D-Series DXT* nga Imagination Technologies dhe driverat pronësorë të NVIDIA.

Novitetet kryesore:

  • Është shtuar mbështetje për mekanizmin 'Streaming Transfers', i destinuar për të siguruar transmetim të rrymës së madhe të të dhënave midis sistemit kryesor (host) dhe pajisjes grafike, pa ndërprerë renderimin dhe pa ngadalësuar performancën e saj. Mekanizmi është realizuar përmes zgjerimit të ri VK_EXT_host_image_copy, mbështetja e të cilit është opsionale.
  • Janë bërë të obligueshme mundësitë që kanë si qëllim përmirësimin e performancës:
    • Push Descriptors — mundësia për të regjistruar përditësime të deskriptorëve drejtpërdrejt në bufere të komandeve, në vend të krijimit të grupeve të veçanta të deskriptorëve dhe lidhjes së tyre në bufere të komandeve.
    • VK_KHR_dynamic_rendering_local_read — lejon të bëhet lexim nga bufere të brendshëm (attachments) dhe burime të regjistruara nga shenjuesit (shaders) të mëparshëm, në kuadër të kalimeve dinamike të renderimit (render pass).
    • VK_EXT_scalar_block_layout — lejon përdorimin e një strukture të ngjashme me C për blloqet SPIR-V, në të cilën mund të rregullohen lloje jo skalarë në bazë të madhësisë së komponenteve të tyre.
  • Përfshihen zgjerimet VK_KHR_maintenance5 dhe VK_KHR_maintenance6, që ofrojnë komanda dhe struktura ndihmëse për të lehtësuar menaxhimin e burimeve dhe shenjuesve.
  • Garancinë mbështetje për renditjen me kufizim 8K (7680 x 4320 pikselë) dhe duke përdorur deri në 8 bufera të pavarur të renditjes.
  • Përfshihen zgjerime:
    • 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
  • Shumë funksionalitete, të cilat më parë ishin opsionale, tani janë bërë të detyrueshme.
  • Shtuar një sasi të madhe komandash dhe strukturash të reja.

API Vulkan është i njohur për thjeshtimin e thellë të drejtorive, nxjerrjen e gjenerimit të komandave GPU në anën e aplikacionit, mundësinë e lidhjes së niveleve të debugut, unifikimin e API për platforma të ndryshme dhe aplikimin e përfaqësimeve të ndërmjetme të kodit të parapërpunuar për ekzekutim në anën e GPU.

Për të siguruar performancë të lartë dhe parashikueshmëri, Vulkan u ofron aplikacioneve mjete për menaxhimin e drejtpërdrejtë të operacioneve GPU dhe mbështetje të integruar për përpunimin shumëfishek të komandave GPU, çka minimizon shpenzimet e shkaktuara nga drejtori, dhe mundësitë e realizuara nga drejtori bëhen ndjeshëm më të thjeshta dhe më parashikueshëm. Për shembull, operacione të tilla si menaxhimi i memories dhe përpunimi i gabimeve, të realizuara në OpenGL nga drejtori, në Vulkan janë nxjerrë në nivelin e aplikacionit.

Vulkan mbulon të gjitha platformat e disponueshme dhe ofron një API të vetëm për sistemet desktop, mobile dhe Web, duke lejuar përdorimin e një API të zakonshëm për grafikët e ndryshëm dhe fushat e aplikimeve. Me arkitekturën me shumë nivele të Vulkan, që supozon krijimin e mjeteve që punojnë me çdo GPU, prodhuesit e pajisjeve mund të përdorin në zhvillimin e tyre mjete standarde për verifikimin e kodit, debugimin dhe profilimin.

Për krijimin e shenjave ofrohet një përfaqësim ndërmjetës portativ SPIR-V, i bazuar në LLVM dhe që përdor teknologjitë themelore të zakonshme me OpenCL. Me Vulkan mund të përdoret gjithashtu gjuha e shenjave HLSL, e aplikuar në DirectX, përmes përkthimit të saj në SPIR-V. Për menaxhimin e pajisjeve dhe ekraneve në Vulkan ofrohet një ndërfaqe WSI (Integrimi i Sistemit të Dritareve), e cila zgjidh në mënyrë të ngjashme detyra si EGL në OpenGL ES. Mbështetje WSI është menjëherë e disponueshme në Wayland - të gjitha aplikacionet që përdorin Vulkan mund të ekzekutohen në një mjedis të pambrojtur. serverësh Wayland. Mundësia e punës përmes WSI është gjithashtu e siguruar për Android, X11 (me DRI3), Windows, Tizen, macOS dhe iOS.

Burimi: opennet.ru

Blini hostim të besueshëm për faqe interneti me mbrojtje DDoS, serverë VPS VDS 🔥 Blini hostim të besueshëm për faqe interneti me mbrojtje DDoS, serverë VPS VDS - ProHoster