Zithunzi zamtundu wa Vulkan 1.2 zosindikizidwa

Khronos consortium, yomwe imapanga miyezo yojambula,
lofalitsidwa kufotokoza Vulkan 1.2, yomwe imatanthawuza API kuti mupeze zithunzi ndi makompyuta a GPU. Mafotokozedwe atsopanowa akuphatikiza zowongolera zomwe zasonkhanitsidwa pazaka ziwiri ndi kukulitsa. Madalaivala omwe amathandizira mtundu watsopano wa Vulkan ali kale anamasulidwa Intel kampani, AMD, ARM, Imagination Technologies ndi NVIDIA. Mesa imapereka chithandizo cha Vulkan 1.2 kwa oyendetsa Mtengo wa RADV (Makhadi a AMD) ndi Mtengo wa magawo ANV (Intel). Thandizo la Vulkan 1.2 limakhazikitsidwanso mu debugger RenderDoc 1.6, LunarG Vulkan SDK ndi zitsanzo Vulkan-Zitsanzo.

waukulu zatsopano:

  • Zabweretsedwa kwa inu kukhazikitsa chinenero cha pulogalamu ya shader mpaka kukonzekera kugwiritsidwa ntchito ponseponse Mtengo wa HLSL, yopangidwa ndi Microsoft ya DirectX. Thandizo la HLSL mu Vulkan limatheketsa kugwiritsa ntchito ma shader a HLSL omwewo pamapulogalamu otengera Vulkan ndi DirectX, komanso kumathandizira kumasulira kuchokera ku HLSL kupita ku SPIR-V. Kuti mupange shaders, tikulimbikitsidwa kugwiritsa ntchito compiler yokhazikika
    DXC, yomwe idatsegulidwa ndi Microsoft mu 2017 ndipo idakhazikitsidwa paukadaulo wa LLVM. Thandizo la Vulkan limakhazikitsidwa kudzera kumbuyo kosiyana, komwe kumakupatsani mwayi womasulira HLSL kukhala choyimira chapakati cha SPIR-V shader. Kukhazikitsa kumakhudza osati zonse zomwe zamangidwa
    HLSL, kuphatikizapo masamu masamu, kulamulira kuyenda, ntchito, seti, mitundu zipangizo, namespaces, Shader Model 6.2, zomangamanga ndi njira, komanso amalola kugwiritsa ntchito Vulkan-enieni extensions monga VKRay ku NVIDIA. Mu mawonekedwe a HLSL pamwamba pa Vulkan, zinali zotheka kukonza ntchito zamasewera monga Destiny 2, Red Dead Redemption II, Assassin's Creed Odyssey ndi Tomb Raider.

    Zithunzi zamtundu wa Vulkan 1.2 zosindikizidwa

  • Zomwe zasinthidwa SPIR-V 1.5, yomwe imatanthawuza chiwonetsero chapakatikati cha shaders chomwe chili chonse kwa nsanja zonse ndipo chingagwiritsidwe ntchito pazithunzi zonse ndi computing yofanana.
    SPIR-V imaphatikizapo kulekanitsa gawo lophatikizana la shader kukhala choyimira chapakati, chomwe chimakupatsani mwayi wopanga zilankhulo zakutsogolo za zilankhulo zapamwamba. Kutengera machitidwe osiyanasiyana apamwamba, code imodzi yapakatikati imapangidwa padera, yomwe ingagwiritsidwe ntchito ndi madalaivala a OpenGL, Vulkan ndi OpenCL popanda kugwiritsa ntchito makina opangira shader.

    Zithunzi zamtundu wa Vulkan 1.2 zosindikizidwa

  • Vulkan API yayikulu imaphatikizapo zowonjezera 23 zomwe zimakulitsa magwiridwe antchito, kupititsa patsogolo mawonekedwe, komanso kufewetsa chitukuko. Zina mwa zowonjezera:
    • Chronological semaphores (Semaphore yanthawi), kugwirizanitsa kulumikizana ndi mizere yolandila ndi zida (kukulolani kuti mugwiritse ntchito choyambira chimodzi pakulunzanitsa kwanthawi zonse pakati pa chipangizocho ndi chochititsa, osagwiritsa ntchito zoyambira za VkFence ndi VkSemaphore). Ma semaphores atsopano amaimiridwa ndi kuchuluka kwa 64-bit komwe kumatha kutsatiridwa ndikusinthidwa pamitumbo ingapo.
      Zithunzi zamtundu wa Vulkan 1.2 zosindikizidwa

    • Kutha kugwiritsa ntchito mitundu ya manambala ndikuchepetsa kulondola kwa shaders;
    • HLSL yogwirizana ndi njira yopangira kukumbukira;
    • Zida zopanda malire (zopanda malire), zomwe zimachotsa malire pa chiwerengero cha zinthu zomwe zilipo kwa shaders pogwiritsa ntchito malo omwe amagawana nawo a kukumbukira dongosolo ndi kukumbukira GPU;
    • Formal memory model, yomwe imatanthawuza momwe ulusi wogwirizira ungafikire deta yogawidwa ndi ntchito zogwirizanitsa;
    • Mlozera wofotokozera kugwiritsanso ntchito zofotokozera za masanjidwe pamitundu ingapo;
    • Maulalo a buffer.

    Mndandanda wonse wa zowonjezera zowonjezera:

  • Yowonjezedwa ndi zopitilira 50 zatsopano ndi ntchito 13;
  • Mitundu yofupikitsidwa yazomwe zafotokozedwazo zakonzedwa kuti zigwirizane ndi zomwe mukufuna, kufewetsa ntchito pamapulatifomu omwe zowonjezera sizikuthandizidwabe, ndikulola munthu kuchita popanda kusankha kutsegulira kwamphamvu za Vulkan API.
  • Ntchito ikupitilira pulojekitiyi kuti iwonetsetse kusuntha ndi ma API ena ojambula. Mwachitsanzo, Vulkan imapereka zowonjezera zomwe zimalola kumasulira kwa OpenGL (ZinkOpenCL (clspv, clvkOpenGL ES (GLOVE, ngodya) ndi DirectX (Zamgululi, vkd3d) kudzera mu Vulkan API, komanso, kumbali ina, kuti athandize Vulkan kugwira ntchito pamapulatifomu popanda chithandizo chake (gfx-rs ΠΈ Phulusa pogwira ntchito pamwamba pa OpenGL ndi DirectX, KusungunukaVK ndi gfx-rs pogwira ntchito pamwamba pa Zitsulo).
    Zowonjezera zowonjezera kuti zigwirizane ndi DirectX ndi HLSL
    VK_KHR_host_query_reset, VK_KHR_uniform_buffer_standard_layout, VK_EXT_scalar_block_layout, VK_KHR_separate_stencil_usage, VK_KHR_separate_depth_stencil_layouts, ndi SPIR-V imagwiritsa ntchito luso lapadera la HLSL.

Zokonzekera zam'tsogolo zikuphatikizapo kupititsa patsogolo maphunziro a makina, kufufuza ma ray, kukopera mavidiyo ndi kujambula, kuthandizira VRS (kusinthasintha kwa shading) ndi ma Mesh shader.

Kumbukirani kuti Vulkan API chodabwitsa kupangitsa madalaivala kukhala osavuta, kusuntha m'badwo wa malamulo a GPU kumbali yogwiritsira ntchito, kutha kulumikiza zigawo zowonongeka, kugwirizanitsa API pamapulatifomu osiyanasiyana ndikugwiritsa ntchito chidziwitso chapakatikati cha code kuti aphedwe kumbali ya GPU. Kuwonetsetsa kuti zikuyenda bwino komanso zodziwikiratu, Vulkan imapereka mapulogalamu omwe ali ndi chiwongolero chachindunji pa magwiridwe antchito a GPU komanso kuthandizira kwawoko kwa ma GPU angapo, omwe amachepetsa madalaivala ndikupangitsa kuthekera kwa oyendetsa kukhala kosavuta komanso kodziwikiratu. Mwachitsanzo, ntchito monga kukumbukira kukumbukira ndi kusamalira zolakwika, zomwe zakhazikitsidwa mu OpenGL kumbali yoyendetsa, zimasunthidwa kupita ku Vulkan.

Vulkan imapanga nsanja zonse zomwe zilipo ndipo imapereka API imodzi yapakompyuta, yam'manja, ndi intaneti, kulola API imodzi yodziwika kuti igwiritsidwe ntchito pama GPU angapo ndi mapulogalamu. Chifukwa cha zomangamanga za Vulkan zambirimbiri, zomwe zikutanthauza zida zomwe zimagwira ntchito ndi GPU iliyonse, ma OEM amatha kugwiritsa ntchito zida zamakampani zowunikira ma code, kukonza zolakwika, ndi mbiri panthawi yachitukuko. Pakupanga shader, choyimira chatsopano chapakatikati, SPIR-V, chikuperekedwa, kutengera LLVM ndikugawana matekinoloje apakati ndi OpenCL. Kuti muwongolere zida ndi zowonera, Vulkan imapereka mawonekedwe a WSI (Window System Integration), omwe amathetsa zovuta zofanana ndi EGL mu OpenGL ES. Thandizo la WSI likupezeka m'bokosi la Wayland - mapulogalamu onse ogwiritsira ntchito Vulkan amatha kuyenda m'malo osasinthidwa ma seva a Wayland. Kutha kugwira ntchito kudzera pa WSI kumaperekedwanso kwa Android, X11 (ndi DRI3), Windows, Tizen, macOS ndi iOS.

Source: opennet.ru

Kuwonjezera ndemanga