Vulkan 1.3 graafikastandard on vÀlja antud.

Kaks aastat töötanud konsortsium Khronos, mis tegeleb graafikastandardite arendamisega, avaldas spetsifikatsiooni Vulkan 1.3, mis mÀÀratleb API juurdepÀÀsuks GPU graafika- ja arvutusvĂ”imele. Uus spetsifikatsioon hĂ”lmab kahe aasta jooksul kogunenud parandusi ja tĂ€iendusi. MĂ€rgitakse, et Vulkan 1.3 spetsifikatsiooni nĂ”udmised on loodud OpenGL ES 3.1 klassi graafikaseadmete jaoks, mis vĂ”imaldab toetada uut graafilist API-d kĂ”igis GPU-des, mis toetavad Vulkan 1.2. Vulkan SDK tööriistakomplekti plaanitakse avaldada veebruari keskel. Peale pĂ”hi-spetsifikatsiooni pakutakse ka tĂ€iendavaid laiendusi keskmise ja kĂ”rge klassi mobiilsete ja lauaarvutite jaoks, mille toe rakendamine toimub redaktsiooni „Vulkan Milestone“ raames.

Samaajalselt esitatakse plaan uue spetsifikatsiooni ja tÀiendavate laienduste toetamiseks graafikakaartides ja seadme draivides. Vulkan 1.3 toega tooted on valmis vÀljastamiseks ettevÔtetelt Intel, AMD, ARM ja NVIDIA. NÀiteks on AMD teatanud peatsest Vulkan 1.3 toe pakkumisest AMD Radeon RX Vega graafikakaartide seerias ning kÔikides AMD RDNA arhitektuuril pÔhinevates kaartides. NVIDIA plaanib avaldada Vulkan 1.3 toetavad draiverid Linuxile ja Windowsile. ARM lisab Vulkan 1.3 toe Mali GPU-le.

PÔhilised uuendused:

  • On rakendatud lihtsustatud renderdusprotsesside toetust (Streamlining Render Passes, VK_KHR_dynamic_rendering), mis vĂ”imaldavad alustada renderdamist ilma renderdusprotsesside ja framebufferi objektide loomiseta.
  • On lisatud uusi laiendusi graafikapipeline'i (pipeline) kompileerimise haldamise lihtsustamiseks, mis on toimingute kogum, mis muudab vektorgraafilised primitiivid ja tekstuurid piksli esituseks.
    • VK_EXT_extended_dynamic_state, VK_EXT_extended_dynamic_state2 — lisavad tĂ€iendavaid dĂŒnaamilisi olekuid, et vĂ€hendada kompileeritavate ja kinnitatud olekuobjektide arvu.
    • VK_EXT_pipeline_creation_cache_control — pakub tĂ€iustatud tööriistu torude kompileerimise kontrollimiseks ja ajastamiseks.
    • VK_EXT_pipeline_creation_feedback — annab teavet kompileeritud torude kohta, et lihtsustada profiilimisi ja tĂ”rkeotsingut.
  • Rida vĂ”imalusi on muudetud valikulistest kohustuslikeks. NĂ€iteks on nĂŒĂŒd kohustuslik rakendada pöördfaili viiteid (VK_KHR_buffer_device_address) ja Vulkan'i mĂ€lu mudelit, mis mÀÀratleb, kuidas paralleelselt töötavad lĂ”imed saavad ligipÀÀsu jagatud andmetele ja sĂŒnkroniseerimise operatsioonidele.
  • On pakutud tĂ€pset alagruppide juhtimise tööriista (VK_EXT_subgroup_size_control), mille abil tootjad saavad pakkuda mitme alagrupi suuruse toetust ning arendajad saavad valida vajaliku suuruse.
  • On antud VK_KHR_shader_integer_dot_product laiendus, mida saab kasutada masinĂ”ppe raamistikute töö optimeerimiseks, tĂ€nu skalaarkorrutuse operatsioonide riistvaras kiirendamisele.
  • Kokku sisaldab see 23 uut laiendust:
    • VK_KHR_copy_commands2
    • VK_KHR_dynamic_rendering
    • VK_KHR_format_feature_flags2
    • VK_KHR_maintenance4
    • VK_KHR_shader_integer_dot_product
    • VK_KHR_shader_non_semantic_info
    • VK_KHR_shader_terminate_invocation
    • VK_KHR_synchronization2
    • VK_KHR_zero_initialize_workgroup_memory
    • VK_EXT_4444_formats
    • VK_EXT_extended_dynamic_state
    • VK_EXT_extended_dynamic_state2
    • VK_EXT_image_robustness
    • VK_EXT_inline_uniform_block
    • VK_EXT_pipeline_creation_cache_control
    • VK_EXT_pipeline_creation_feedback
    • VK_EXT_private_data
    • VK_EXT_shader_demote_to_helper_invocation
    • VK_EXT_subgroup_size_control
    • VK_EXT_texel_buffer_alignment
    • VK_EXT_texture_compression_astc_hdr
    • VK_EXT_tooling_info
    • VK_EXT_ycbcr_2plane_444_formats
  • Lisatud uus objektide tĂŒĂŒp VkPrivateDataSlot. Rakendatud 37 uut kĂ€sku ja ĂŒle 60 struktuuri.
  • Uuendatud SPIR-V 1.6 spetsifikatsioon, mis mÀÀratleb universaalse, platvormideĂŒlese vahepealse esitluse shaderite jaoks, mis saab kasutada nii graafikas kui ka paralleelsetes arvutustes. SPIR-V eeldab shaderite kompileerimise eraldi etappi vahepealsesse esitusesse, mis vĂ”imaldab luua erinevale kĂ”rgtaseme keelele frontende. Erinevate kĂ”rgtaseme rakenduste pĂ”hjal genereeritakse eraldi ĂŒhtne vaheline kood, mida saavad kasutada OpenGL, Vulkan ja OpenCL draiverid ilma sisseehitatud shaderi kompilaatorit kasutamata.
  • Pakutud vĂ€lja ĂŒhilduvuse profiilide kontseptsioon. Esimese ettevĂ”ttena on Google valmistanud ette baselai profili Android platvormile, mis lihtsustab seadmes Vulkan'i laiendatud vĂ”imaluste toe taseme mÀÀratlemist, mis ĂŒletab Vulkan 1.0 spetsifikatsiooni. Enamiku seadmete puhul saab profiili tuge pakkuda ilma OTA-uuenduste installimiseta.

Tulet meelde, et Vulkan API paistab silma draiverite kardinaalse lihtsustamisega, GPU kĂ€su genereerimise viimisega rakenduse kĂŒljele, vĂ”imalusega ĂŒhendada silte, API ĂŒhtlustamisega erinevatele platvormidele ning eelkompileeritud vahepealse koodi esitusvormi kasutamisega GPU poolsel tĂ€itmisel. KĂ”rgete jĂ”udluse ja ennustatavuse tagamiseks pakub Vulkan rakendustele vahendeid GPU operatsioonide otseseks juhtimiseks ning sisseehitatud toe mitme lĂ”ime töötlemise GPU kĂ€skudele, mis vĂ€hendab draiveri poolt kaasnevaid kulusid ning draiveri poolel rakendatavad funktsioonid lihtsustuvad ja muutuvad ennustatavamaks. NĂ€iteks sellised toimingud nagu mĂ€lu haldamine ja veahaldus, mis on OpenGL-is rakendatud draiveri poolel, on Vulkanis viidud rakenduse tasemele.

Vulkan katab kĂ”ikidel saadaval platvormidel, pakkudes ĂŒhtset API-d lauaarvutite, mobiilsĂŒsteemide ja veebiplatvormide jaoks. See vĂ”imaldab kasutada ĂŒhte ĂŒhist API-d erinevate graafikakaartide ja rakenduste jaoks. Vulkani mitmekihiline arhitektuur, mis hĂ”lmab seadmete jaoks tööriistade loomist, mis töötavad erinevate GPU-dega, vĂ”imaldab riistvaratootjatel kasutada arendamisel kohandatud tööriistu koodi kontrollimiseks, silumiseks ja profiliseerimiseks. Shaderite loomine toimub uue ĂŒlekantava vaheformaadi SPIR-V kaudu, mis toetub LLVM-ile ja kasutab OpenCL-iga ĂŒhist tehnoloogiat. Seadmete ja ekraanide haldamiseks pakub Vulkan WSI (Window System Integration) liidest, mis lahendab ligikaudu sama ĂŒlesande nagu EGL OpenGL ES-is. WSI tugi on vĂ€lja pakutud Waylandis — kĂ”ik Vulkanit kasutavad rakendused saavad töötada muutmata keskkonnas. serverite Wayland. WSI kaudu töötamise vĂ”imalus on samuti tagatud Androidi, X11 (koos DRI3), Windowsi, Tizeni, macOS-i ja iOS-i jaoks.

Allikas: opennet.ru

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster