Whakairoiro paerewa Vulkan 1.3 whakaputaina

I muri i nga tau e rua o te mahi, kua whakaputahia e te roopu paerewa whakairoiro a Khronos te tohu Vulkan 1.3, e whakaatu ana i te API mo te uru atu ki nga whakairoiro me nga kaha rorohiko o nga GPU. Ko te whakatakotoranga hou e whakauru ana i nga whakatikatika me nga taapiri kua kohia i roto i nga tau e rua. Kei te tohuhia ko nga whakaritenga o te waahanga Vulkan 1.3 kua hangaia mo nga taputapu whakairoiro o te akomanga OpenGL ES 3.1, ka whakarite i te tautoko mo te API whakairoiro hou i roto i nga GPU katoa e tautoko ana i te Vulkan 1.2. Ko nga taputapu Vulkan SDK kua whakamaheretia kia whakaputaina i waenganui o Hui-tanguru. I tua atu i nga korero matua, kua whakamaherehia kia tukuna atu etahi atu taapiri mo nga taputapu waea-waenganui me te teitei-mutunga me nga taputapu papamahi, ka tautokohia hei waahanga o te putanga "Vulkan Milestone".

I te wa ano, ka tukuna he mahere ki te whakatinana i te tautoko mo te waahanga hou me nga taapiri taapiri i nga kaari whakairoiro me nga taraiwa taputapu. Kei te whakarite a Intel, AMD, ARM me NVIDIA ki te tuku i nga hua e tautoko ana i te Vulkan 1.3. Hei tauira, i kii a AMD ka tautokohia e ia a Vulkan 1.3 i roto i te raupapa AMD Radeon RX Vega o nga kaari whakairoiro, me nga kaari katoa i runga i te hoahoanga AMD RDNA. Kei te whakarite a NVIDIA ki te whakaputa i nga taraiwa me te tautoko mo Vulkan 1.3 mo Linux me Windows. Ka taapirihia e te ARM te tautoko mo te Vulkan 1.3 ki nga Mali GPU.

Nga mahi hou:

  • Ko te tautoko mo nga paahi tuku whakamaarama (Te Whakamaamaa i nga Paahi Render, VK_KHR_dynamic_rendering) kua whakatinanahia, ka taea e koe te timata ki te whakaputa me te kore e hanga i nga paahi tuku me nga taonga anga.
  • Kua taapirihia nga taapiri hou hei whakangawari i te whakahaeretanga o te whakahiato paipa paipa (pipeline, he huinga mahi e huri ana i nga whakairoiro vector taketake me nga kakano hei tohu pika).
    • VK_EXT_extended_dynamic_state, VK_EXT_extended_dynamic_state2 - taapirihia etahi atu ahua hihiri hei whakaiti i te maha o nga mea ahua kua whakahiatohia me te taapiri.
    • VK_EXT_pipeline_creation_cache_control - Ka whakarato mana matatau mo te wa me te pehea e whakahiatohia ai nga paipa.
    • VK_EXT_pipeline_creation_feedback - He tuku korero mo nga raina paipa kua whakahiato kia ngawari ake ai te whakatakoto korero me te patuiro.
  • He maha nga ahuatanga kua whakawhitia mai i te kowhiringa ki te whakahau. Hei tauira, ko te whakatinanatanga o nga tohutoro buffer (VK_KHR_buffer_device_address) me te tauira mahara Vulkan, e whakaatu ana me pehea e uru atu ai nga miro tukutahi ki nga raraunga tiritahi me nga mahi tukutahi, he mea whakahau inaianei.
  • Ka whakaratohia te mana whakahaere roopu-iti (VK_EXT_subgroup_size_control) kia taea ai e nga kaihoko te tautoko mo nga rahinga roopu-roopu maha ka taea e nga kaihanga te whiriwhiri i te rahi e hiahiatia ana.
  • Kua whakaratohia te toronga VK_KHR_shader_integer_dot_product, ka taea te whakamahi ki te arotau i te mahinga o nga anga ako miihini na te whakaterenga taputapu o nga mahi hua ira.
  • E 23 nga taapiri hou kua whakauruhia:
    • VK_KHR_copy_commands2
    • VK_KHR_dynamic_rendering
    • VK_KHR_format_feature_flags2
    • VK_KHR_tiaki4
    • VK_KHR_shader_integer_dot_product
    • VK_KHR_shader_non_semantic_info
    • VK_KHR_shader_terminate_invocation
    • VK_KHR_tukutahi2
    • VK_KHR_zero_initialize_workgroup_memory
    • VK_EXT_4444_hōputu
    • VK_EXT_muri_whakarato_wāhi
    • VK_EXT_extended_dynamic_state2
    • VK_EXT_whakaahua_roitanga
    • VK_EXT_inline_uniform_block
    • VK_EXT_pipeline_creation_cache_control
    • VK_EXT_pipeline_creation_feedback
    • VK_EXT_raunga_private
    • 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
  • Kua taapirihia he momo ahanoa hou VkPrivateDataSlot. 37 nga whakahau hou, neke atu i te 60 nga hanganga i whakatinanahia.
  • Kua whakahouhia te tohu SPIR-V 1.6 ki te tautuhi i tetahi tohu whakamarumaru takawaenga mo te ao katoa mo nga papaaho katoa ka taea te whakamahi mo nga whakairoiro me te rorohiko whakarara. Kei roto i te SPIR-V te wehewehe i tetahi wahanga whakahiato whakamarumaru motuhake ki tetahi tohu takawaenga, e taea ai e koe te hanga pito o mua mo nga momo reo taumata teitei. I runga i nga momo whakatinanatanga taumata-tiketike, ka hangaia motuhake tetahi waehere takawaenga kotahi, ka taea te whakamahi e nga taraiwa OpenGL, Vulkan me OpenCL me te kore e whakamahi i te whakahiato atarangi kua hangaia.
  • Ko te ariā o nga kotaha hototahi ka whakaarohia. Ko Google te tuatahi ki te tuku i tetahi tohu turanga mo te papaahi Android, ka maamaa ake te whakatau i te taumata o te tautoko mo nga kaha Vulkan matatau i runga i tetahi taputapu kei tua atu i te whakatakotoranga Vulkan 1.0. Mo te nuinga o nga taputapu, ka taea te tautoko korero me te kore e whakauru i nga whakahou OTA.

Kia maumahara tatou ko te Vulkan API he mea rongonui mo te ngawari o nga taraiwa, te whakawhiti i te whakatipuranga o nga whakahau GPU ki te taha tono, te kaha ki te hono i nga papa patuiro, te whakakotahitanga o te API mo nga momo papaaho me te whakamahi i te waahanga kua oti te whakarite. tohu takawaenga o te waehere mo te mahi i te taha GPU. Hei whakarite i nga mahi teitei me te matapae, ka tukuna e Vulkan nga tono mana tika mo nga mahi GPU me te tautoko taketake mo te GPU miro-maha, e whakaiti ana i te taraiwa o runga ake, me te hanga i nga kaha o te taha taraiwa kia ngawari ake, kia maarama ake. Hei tauira, ko nga mahi penei i te whakahaere mahara me te whakahaere hapa, i whakatinanahia i OpenGL i te taha taraiwa, ka nekehia ki te taumata tono i Vulkan.

Ka horahia e Vulkan nga papaaho katoa e waatea ana me te whakarato i te API kotahi mo te papamahi, waea pūkoro me te paetukutuku, ka taea te whakamahi i tetahi API noa puta noa i nga GPU me nga tono maha. He mihi ki te hoahoanga paparanga-maha a Vulkan, ko te tikanga he taputapu e mahi tahi ana me tetahi GPU, ka taea e nga OEM te whakamahi i nga taputapu paerewa-ahumahi mo te arotake waehere, te patuiro, me te tohu i te wa o te whanaketanga. Mo te hanga i nga whakamarumaru, ka whakaarohia he tohu takawaenga kawe hou, SPIR-V, i runga i te LLVM me te tiri i nga hangarau matua ki a OpenCL. Hei whakahaere i nga taputapu me nga mata, ka tukuna e Vulkan te atanga WSI (Window System Integration), e whakaoti ana i nga raruraru rite tonu ki a EGL i OpenGL ES. Kei te waatea te tautoko WSI i waho o te pouaka i Wayland - ko nga tono katoa e whakamahi ana i a Vulkan ka taea te whakahaere i roto i te taiao o nga kaiwhakarato Wayland kaore i whakarereketia. Ko te kaha ki te mahi ma te WSI ka tukuna ano mo te Android, X11 (me DRI3), Windows, Tizen, macOS me iOS.

Source: opennet.ru

Tāpiri i te kōrero