Zithunzi zamtundu wa Vulkan 1.3 zosindikizidwa

Pambuyo pa zaka ziwiri za ntchito, gulu la graphics standards consortium Khronos lasindikiza ndondomeko ya Vulkan 1.3, yomwe imatanthawuza API yopezera zojambula ndi makompyuta a GPUs. Mafotokozedwe atsopanowa akuphatikiza zowongolera ndi zowonjezera zomwe zasonkhanitsidwa pazaka ziwiri. Zadziwika kuti zofunikira za Vulkan 1.3 zidapangidwira zida zojambulira za OpenGL ES 3.1, zomwe zitsimikizire kuthandizira kwazithunzi zatsopano za API mu ma GPU onse omwe amathandizira Vulkan 1.2. Zida za Vulkan SDK zikuyenera kusindikizidwa mkati mwa February. Kuphatikiza pazowunikira zazikuluzikulu, zakonzedwa kuti zipereke zowonjezera zowonjezera pazida zapakatikati komanso zapamwamba zam'manja ndi pakompyuta, zomwe zidzathandizidwa ngati gawo la "Vulkan Milestone" kope.

Panthawi imodzimodziyo, ndondomeko imaperekedwa kuti igwiritse ntchito chithandizo chazomwe zatsopano komanso zowonjezera zowonjezera mu makadi ojambula zithunzi ndi oyendetsa zipangizo. Intel, AMD, ARM ndi NVIDIA akukonzekera kutulutsa zinthu zothandizira Vulkan 1.3. Mwachitsanzo, AMD inalengeza kuti posachedwa ithandiza Vulkan 1.3 mu AMD Radeon RX Vega makadi ojambula, komanso makadi onse otengera kamangidwe ka AMD RDNA. NVIDIA ikukonzekera kufalitsa madalaivala ndi chithandizo cha Vulkan 1.3 cha Linux ndi Windows. ARM iwonjezera chithandizo cha Vulkan 1.3 ku Mali GPUs.

Zatsopano zazikulu:

  • Thandizo la ma pass osavuta omasulira (Streamlining Render Passes, VK_KHR_dynamic_rendering) yakhazikitsidwa, kukulolani kuti muyambe kupereka popanda kupanga ma pass ndi zinthu za framebuffer.
  • Zowonjezera zatsopano zawonjezedwa kuti muchepetse kasamalidwe ka mapaipi azithunzi (paipi, gulu la magwiridwe antchito omwe amasintha ma vector graphics oyambira ndi mawonekedwe kukhala oyimira ma pixel).
    • VK_EXT_extended_dynamic_state, VK_EXT_extended_dynamic_state2 - onjezerani maiko owonjezera kuti muchepetse kuchuluka kwa zinthu zomwe zaphatikizidwa ndikuphatikizidwa.
    • VK_EXT_pipeline_creation_cache_control - Imapereka maulamuliro apamwamba pa nthawi komanso momwe mapaipi amapangidwira.
    • VK_EXT_pipeline_creation_feedback - Imapereka chidziwitso cha mapaipi ophatikizidwa kuti kufotokoza mbiri ndi kukonza mosavuta.
  • Zinthu zingapo zasamutsidwa kuchoka pamwambo kupita ku zokakamiza. Mwachitsanzo, kukhazikitsidwa kwa maumboni a buffer (VK_KHR_buffer_device_address) ndi mtundu wa kukumbukira kwa Vulkan, womwe umatanthawuza momwe ulusi wolumikizana ungafikire ku data yogawana ndi kuyanjanitsa, ndizovomerezeka.
  • Fine-grained subgroup control (VK_EXT_subgroup_size_control) imaperekedwa kuti ogulitsa athe kupereka chithandizo chamagulu ang'onoang'ono angapo ndipo opanga amatha kusankha kukula komwe akufuna.
  • VK_KHR_shader_integer_dot_product yowonjezera yaperekedwa, yomwe ingagwiritsidwe ntchito kukhathamiritsa magwiridwe antchito a makina ophunzirira makina chifukwa cha kuthamangitsa kwa hardware kwa ntchito zamadontho.
  • Zowonjezera zatsopano 23 zikuphatikizidwa:
    • 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
    • Maonekedwe a VK_EXT_4444_
    • 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_kuyitanitsa
    • VK_EXT_sungani_size_control
    • VK_EXT_texel_buffer_alignment
    • VK_EXT_texture_compression_astc_hdr
    • VK_EXT_tooling_info
    • VK_EXT_ycbcr_2plane_444_formats
  • Adawonjezera chinthu chatsopano VkPrivateDataSlot. Malamulo atsopano 37 ndi zomanga zopitilira 60 zidakhazikitsidwa.
  • Mafotokozedwe a SPIR-V 1.6 asinthidwa kuti afotokoze choyimira chapakatikati cha shader chomwe chili chapadziko lonse lapansi pamapulatifomu onse ndipo chingagwiritsidwe ntchito pazithunzi zonse ndi ma computing ofanana. 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.
  • Lingaliro la mbiri yofananira likuperekedwa. Google ndiye woyamba kutulutsa mbiri yoyambira pa nsanja ya Android, zomwe zipangitsa kuti zikhale zosavuta kudziwa momwe mungathandizire luso lapamwamba la Vulkan pa chipangizo chopitilira Vulkan 1.0. Pazida zambiri, chithandizo chambiri chikhoza kuperekedwa popanda kukhazikitsa zosintha za OTA.

Tiyeni tikumbukire kuti Vulkan API ndiyodziwikiratu chifukwa cha kuphweka kwake kwa madalaivala, kusamutsidwa kwa maulamuliro a GPU kumbali yogwiritsira ntchito, kutha kugwirizanitsa zigawo zowonongeka, kugwirizanitsa API pamapulatifomu osiyanasiyana komanso kugwiritsa ntchito makina opangidwa kale. chiwonetsero chapakati cha code kuti aphedwe mbali 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 ya oyendetsa, 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