I-Khronos consortium, ephuhlisa imigangatho yemizobo,
iinkcukacha , echaza i-API yokufikelela kwimizobo kunye nezakhono zekhompyutha zeGPU. Ingcaciso entsha ibandakanya izilungiso eziqokelelwe kwisithuba seminyaka emibini kunye . Abaqhubi abaxhasa inguqulelo entsha yeVulkan sele bekho Inkampani yeIntel, , ARM, Imagination Technologies kunye . I-Mesa inikezela ngenkxaso yeVulkan 1.2 kubaqhubi (Amakhadi e-AMD) kunye (Intel). Inkxaso yeVulkan 1.2 nayo iphunyeziwe kwi-debugger , kunye neseti yemizekelo .
Siseko :
- ukuphunyezwa kolwimi lwenkqubo ye-shader de ilungele ukusetyenziswa ngokubanzi , iphuhliswe nguMicrosoft ukwenzela iDirectX. Inkxaso ye-HLSL kwi-Vulkan yenza kube lula ukusebenzisa i-shaders ye-HLSL efanayo kwizicelo ezisekelwe kwi-Vulkan kunye ne-DirectX, kwaye yenza lula ukuguqulela ukusuka kwi-HLSL ukuya kwi-SPIR-V. Ukuqokelela i-shaders, kucetyiswa ukuba kusetyenziswe umqambi oqhelekileyo
, eyavulwa yiMicrosoft kwi-2017 kwaye isekelwe kwi-teknoloji ye-LLVM. Inkxaso yeVulkan iphunyezwa nge-backend eyahlukileyo, ekuvumela ukuba uguqulele i-HLSL ibe ngumboniso ophakathi we-SPIR-V shaders. Ukuphunyezwa akuquki kuphela zonke izakhono ezakhelwe ngaphakathi
I-HLSL, kubandakanywa iintlobo zemathematika, ukuhamba kokulawula, imisebenzi, iiseti, iintlobo zemithombo, izithuba zamagama, i-Shader Model 6.2, izakhiwo kunye neendlela, kodwa ivumela ukusetyenziswa kwezandiso ezithile ze-Vulkan ezifana ne-VKRay evela kwi-NVIDIA. Kwimodi ye-HLSL phezulu kweVulkan, kwakunokwenzeka ukulungelelanisa umsebenzi wemidlalo efana ne-Destiny 2, i-Red Dead Redemption II, i-Assassin's Creed Odyssey kunye neTomb Raider. - Iinkcukacha zihlaziyiwe , echaza ukumelwa okuphakathi kwee-shaders ezifumaneka jikelele kuwo onke amaqonga kwaye zingasetyenziselwa zombini iigraphics kunye ne-parallel computing.
I-SPIR-V ibandakanya ukwahlula isigaba sokuqulunqa i-shader esahlukileyo sibe sisimeli esiphakathi, esikuvumela ukuba wenze ii-frontends zeelwimi ezahlukeneyo ezikumgangatho ophezulu. Ngokusekelwe kwiinkqubo ezahlukeneyo zokuphunyezwa kwezinga eliphezulu, ikhowudi enye ephakathi yenziwe ngokwahlukileyo, engasetyenziswa ngabaqhubi be-OpenGL, Vulkan kunye ne-OpenCL ngaphandle kokusebenzisa i-compiler ye-shader eyakhelwe ngaphakathi.
- I-API ye-Vulkan engundoqo ibandakanya izandiso ze-23 ezonyusa ukusebenza, ukuphucula umgangatho wokunikezela, kunye nokwenza lula uphuhliso. Phakathi kwezongezo ezongeziweyo:
- (Semaphore yomgca wexesha), ukudibanisa ungqamaniso kunye nenginginya kunye nemigca yesixhobo (ikuvumela ukuba usebenzise enye yamandulo yongqamaniso lwe-omnidirectional phakathi kwesixhobo kunye nomamkeli, ngaphandle kokusebenzisa okwahlukileyo kweVkFence kunye neVkSemaphore primitives). I-semiphores entsha imelwe yi-monotonically yokwandisa ixabiso le-64-bit elinokuthi lilandelelwe kwaye lihlaziywe kwimisonto emininzi.

- Ukukwazi ukusebenzisa iindidi zamanani ngokuchaneka okuncitshisiweyo kwi-shaders;
- I-HLSL ehambelanayo noyilo loyilo lwenkumbulo;
- Izibonelelo ezingabonakaliyo (ezingenazibophelelo), ezisusa umda kwinani lezixhobo ezikhoyo kwi-shaders ngokusebenzisa indawo ekwabelwana ngayo yememori yenkqubo kunye nememori ye-GPU;
- , echaza ukuba imisonto ehambelanayo inokufikelela njani kwidatha ekwabelwana ngayo kunye nemisebenzi yongqamaniso;
- ukusebenzisa kwakhona izichazi zoyilo kuzo zonke izithunzela ezininzi;
- Amakhonkco e-Buffer.
Uluhlu olupheleleyo lwezongezo ezongeziweyo:
- (Semaphore yomgca wexesha), ukudibanisa ungqamaniso kunye nenginginya kunye nemigca yesixhobo (ikuvumela ukuba usebenzise enye yamandulo yongqamaniso lwe-omnidirectional phakathi kwesixhobo kunye nomamkeli, ngaphandle kokusebenzisa okwahlukileyo kweVkFence kunye neVkSemaphore primitives). I-semiphores entsha imelwe yi-monotonically yokwandisa ixabiso le-64-bit elinokuthi lilandelelwe kwaye lihlaziywe kwimisonto emininzi.
- ngaphezu kwama-50 amatsha kunye nemisebenzi eli-13;
- Iinguqulelo ezimfutshane zenkcazo zilungiselelwe amaqonga ekujoliswe kuwo, ukwenza lula umsebenzi kumaqonga apho zonke izandiso zingekaxhaswa, kwaye zivumela umntu ukuba enze ngaphandle kokwenza kusebenze okukhethiweyo kwezakhono ezisisiseko zeVulkan API.
- Umsebenzi uyaqhubeka kwiprojekthi ukuqinisekisa ukuphatheka kunye nezinye ii-APIs zemizobo. Umzekelo, iVulkan ibonelela ngezongezo ezivumela uguqulelo lwe-OpenGL (, OpenCL (, ), i-OpenGL ES (iGLOVE, iAngle) kunye neDirectX (, ) ngeVulkan API, kwaye ngokunjalo, ngokuchaseneyo, ukwenza iVulkan isebenze kumaqonga ngaphandle kwenkxaso yayo yemveli ( и ukusebenza ngaphezulu kwe-OpenGL kunye neDirectX, kunye ne-gfx-rs yokusebenza ngaphezulu kweNsimbi).
Izandiso ezongeziweyo zokuphucula ukuhambelana neDirectX kunye neHLSL
VK_KHR_host_query_reset, VK_KHR_uniform_buffer_standard_layout, VK_EXT_scalar_block_layout, VK_KHR_separate_stencil_usage, VK_KHR_ezahlukeneyo_depth_stencil_layouts, kunye neSPIR-V isebenzisa ubuchule obuthile beHLSL.
Izicwangciso zexesha elizayo zibandakanya ukuphuhliswa kwezandiso zokufunda koomatshini, ukulandelwa kwe-ray, i-encoding yevidiyo kunye ne-decoding, inkxaso ye-VRS (i-variable-rate shading) kunye ne-Mesh shaders.
Khumbula ukuba iVulkan API abaqhubi abalula kakhulu, ukuhambisa isizukulwana semiyalelo ye-GPU ukuya kwicala lesicelo, ukukwazi ukudibanisa i-debug layers, ukudibanisa i-API yamaqonga ahlukeneyo kunye nokusebenzisa ukumelwa kwangaphambili okuphakathi kwekhowudi yokuphunyezwa kwicala le-GPU. Ukuqinisekisa ukusebenza okuphezulu kunye nokuqikelelwa, iVulkan ibonelela ngezicelo ngolawulo oluthe ngqo kwimisebenzi ye-GPU kunye nenkxaso yemveli ye-GPU yokudibanisa imisonto emininzi, enciphisa umphezulu womqhubi kwaye yenza amandla ecala lomqhubi abe lula kwaye aqikeleleke ngakumbi. Umzekelo, imisebenzi efana nolawulo lwememori kunye nokuphatha iimpazamo, eziphunyezwe kwi-OpenGL kwicala lomqhubi, zihanjiswe kwinqanaba lesicelo kwi-Vulkan.
I-Vulkan igubungela zonke iiplatifomu ezikhoyo kwaye ibonelela nge-API enye yedesktop, iselfowuni, kunye newebhu, ivumela i-API enye eqhelekileyo kwii-GPU ezahlukeneyo kunye neendawo zesicelo. Uyilo lweVulkan oluneeleya ezininzi, oluvumela ukudalwa kwezixhobo ezisebenza nayo nayiphi na i-GPU, luvumela abavelisi behardware ukuba basebenzise izixhobo eziqhelekileyo zokuphonononga ikhowudi, ukulungisa iimpazamo, kunye nokuprofayili ngexesha lophuhliso. Uphuhliso lwe-shader, kukho umboniso omtsha ophakathi ophathwayo (IR) obizwa ngokuba yi-SPIR-V, osekelwe kwi-LLVM kunye nokwabelana ngetekhnoloji eziphambili ne-OpenCL. Ulawulo lwesixhobo kunye nomboniso, iVulkan inikezela nge-interface ye-WSI (Window System Integration), eyenza imisebenzi efanayo ne-EGL kwi-OpenGL ES. Inkxaso ye-WSI iyafumaneka ngaphandle kwebhokisi eWayland—zonke izicelo ezisekelwe kwiVulkan zinokusebenza kwindawo yeseva yeWayland engatshintshwanga. Inkxaso ye-WSI ikwabonelelwa Android, X11 (ene-DRI3), Windows, Tizen, macOS kunye ne-iOS.
umthombo: opennet.ru


