Graphics txheem Vulkan 1.3 luam tawm

Tom qab ob xyoos ntawm kev ua haujlwm, cov qauv duab kos duab koom nrog Khronos tau tshaj tawm Vulkan 1.3 cov lus qhia, uas txhais tau tias API rau kev nkag mus rau cov duab thiab suav cov peev xwm ntawm GPUs. Cov lus qhia tshiab suav nrog kev kho thiab txuas ntxiv tau sau ntau dua ob xyoos. Nws tau raug sau tseg tias qhov yuav tsum tau muaj ntawm Vulkan 1.3 specification yog tsim los rau OpenGL ES 3.1 cov khoom siv hauv chav kawm, uas yuav ua kom muaj kev txhawb nqa rau cov duab tshiab API hauv txhua GPUs uas txhawb Vulkan 1.2. Cov cuab yeej Vulkan SDK tau npaj yuav tshaj tawm thaum nruab nrab Lub Ob Hlis. Ntxiv rau qhov tshwj xeeb tseem ceeb, nws tau npaj los muab kev txuas ntxiv rau nruab nrab thiab qib high-end mobile thiab desktop, uas yuav tau txais kev txhawb nqa raws li ib feem ntawm "Vulkan Milestone" tsab.

Nyob rau tib lub sijhawm, ib txoj kev npaj tau nthuav tawm los siv kev txhawb nqa rau cov lus qhia tshiab thiab kev txuas ntxiv ntxiv hauv cov ntawv teev lus thiab cov tsav tsheb. Intel, AMD, ARM thiab NVIDIA tab tom npaj tso tawm cov khoom txhawb nqa Vulkan 1.3. Piv txwv li, AMD tshaj tawm tias nws yuav sai sai no yuav txhawb nqa Vulkan 1.3 hauv AMD Radeon RX Vega series ntawm daim npav duab, nrog rau txhua daim npav raws li AMD RDNA architecture. NVIDIA tab tom npaj tshaj tawm cov tsav tsheb nrog kev txhawb nqa rau Vulkan 1.3 rau Linux thiab Windows. ARM yuav ntxiv kev txhawb nqa rau Vulkan 1.3 rau Mali GPUs.

Main innovations:

  • Kev them nyiaj yug rau qhov yooj yim rendering passes (Streamlining Render Passes, VK_KHR_dynamic_rendering) tau siv, tso cai rau koj pib rendering yam tsis tau tsim rendering passes thiab framebuffer khoom.
  • Cov kev txuas ntxiv tshiab tau ntxiv los ua kom yooj yim rau kev tswj hwm ntawm cov kav dej tso ua ke (pipeline, txheej txheej ntawm kev ua haujlwm uas hloov vector duab primitives thiab textures rau hauv pixel sawv cev).
    • VK_EXT_extended_dynamic_state, VK_EXT_extended_dynamic_state2 - ntxiv cov dynamic xeev ntxiv kom txo cov naj npawb ntawm compiled thiab txuas lub xeev cov khoom.
    • VK_EXT_pipeline_creation_cache_control - Muab cov kev tswj hwm siab tshaj thaum twg thiab yuav ua li cas cov kav dej tso ua ke.
    • VK_EXT_pipeline_creation_feedback - Muab cov ntaub ntawv hais txog cov kav dej tso ua ke kom ua kom profileing thiab debugging yooj yim dua.
  • Ib tug xov tooj ntawm cov yam ntxwv tau raug pauv los ntawm kev xaiv mus rau qhov yuav tsum tau ua. Piv txwv li, kev siv cov ntaub ntawv tsis siv neeg (VK_KHR_buffer_device_address) thiab Vulkan lub cim xeeb qauv, uas txhais tau hais tias cov xov sib txuas tuaj yeem nkag mus tau cov ntaub ntawv sib koom thiab kev ua haujlwm synchronization, tam sim no yuav tsum tau ua.
  • Fine-grained subgroup tswj (VK_EXT_subgroup_size_control) yog muab los kom cov neeg muag khoom tuaj yeem muab kev txhawb nqa rau ntau pawg pab pawg thiab cov neeg tsim khoom tuaj yeem xaiv qhov loj me uas lawv xav tau.
  • VK_KHR_shader_integer_dot_product txuas ntxiv tau muab, uas tuaj yeem siv los txhim kho kev ua haujlwm ntawm kev kawm tshuab ua tsaug rau kho vajtse acceleration ntawm dot khoom lag luam.
  • Tag nrho ntawm 23 qhov kev nthuav dav tshiab suav nrog:
    • 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
  • Ntxiv cov khoom tshiab hom VkPrivateDataSlot. 37 cov lus txib tshiab thiab ntau dua 60 cov qauv tau ua tiav.
  • SPIR-V 1.6 cov lus qhia tshwj xeeb tau raug hloov kho los txhais cov duab nruab nrab ntawm cov duab ntxoov ntxoo uas yog universal rau txhua lub platform thiab tuaj yeem siv rau ob qho tib si duab thiab kev suav ua ke. SPIR-V suav nrog kev sib cais ib ntus kev sib sau ua ke rau hauv ib qho kev sawv cev nruab nrab, uas tso cai rau koj los tsim cov lus qhia rau ntau hom lus siab. Raws li ntau yam kev siv qib siab, ib tus lej nruab nrab ntawm ib qho yog cais tawm, uas tuaj yeem siv los ntawm OpenGL, Vulkan thiab OpenCL tsav tsheb yam tsis tas siv lub hauv paus shader compiler.
  • Lub tswv yim ntawm compatibility profiles yog npaj. Google yog thawj tus tshaj tawm cov ntaub ntawv hauv paus rau Android platform, uas yuav ua rau nws yooj yim dua los txiav txim siab txog qib kev txhawb nqa rau Vulkan siab tshaj plaws ntawm lub cuab yeej tshaj li Vulkan 1.0 specification. Rau feem ntau cov khoom siv, kev txhawb nqa profile tuaj yeem muab yam tsis tau txhim kho OTA hloov tshiab.

Cia peb nco qab tias Vulkan API yog qhov tseem ceeb rau nws qhov yooj yim ntawm kev tsav tsheb, kev hloov pauv ntawm GPU cov lus txib mus rau sab ntawm daim ntawv thov, muaj peev xwm txuas cov txheej txheem debugging, kev sib koom ua ke ntawm API rau ntau lub platform thiab kev siv precompiled. nruab nrab sawv cev ntawm cov cai rau kev ua tiav ntawm GPU sab. Txhawm rau ua kom muaj kev ua tau zoo thiab kev kwv yees tau zoo, Vulkan muab cov ntawv thov nrog kev tswj hwm ncaj qha ntawm GPU kev ua haujlwm thiab kev txhawb nqa ib txwm muaj rau GPU ntau txoj xov, uas txo qis tus neeg tsav tsheb nyiaj siv ua haujlwm thiab ua rau muaj peev xwm tsav tsheb ntau yooj yim thiab kwv yees ntau dua. Piv txwv li, kev ua haujlwm xws li kev tswj hwm kev nco thiab kev ua yuam kev, siv hauv OpenGL ntawm tus tsav tsheb, raug hloov mus rau qib kev thov hauv Vulkan.

Vulkan nthuav tawm txhua lub platform uas muaj thiab muab ib qho API rau desktop, mobile, thiab lub vev xaib, tso cai rau ib qho API siv los hla ntau GPUs thiab daim ntawv thov. Ua tsaug rau Vulkan cov txheej txheem ntau txheej, uas txhais tau hais tias cov cuab yeej ua haujlwm nrog ib qho GPU, OEMs tuaj yeem siv cov cuab yeej siv hauv kev lag luam rau kev tshuaj xyuas cov cai, kev debugging, thiab profileing thaum lub sij hawm tsim kho. Rau kev tsim cov duab ntxoov ntxoo, tus sawv cev nruab nrab ntawm cov khoom siv tau yooj yim, SPIR-V, tau thov, raws li LLVM thiab sib koom cov thev naus laus zis tseem ceeb nrog OpenCL. Txhawm rau tswj cov khoom siv thiab cov ntxaij vab tshaus, Vulkan muab WSI (Qhov rai System Integration) cuam tshuam, uas daws cov teeb meem kwv yees li EGL hauv OpenGL ES. WSI kev txhawb nqa yog muaj tawm ntawm lub thawv hauv Wayland - txhua daim ntawv thov siv Vulkan tuaj yeem khiav hauv ib puag ncig ntawm Wayland servers tsis hloov. Lub peev xwm ua haujlwm ntawm WSI kuj tau muab rau Android, X11 (nrog DRI3), Windows, Tizen, macOS thiab iOS.

Tau qhov twg los: opennet.ru

Ntxiv ib saib