Graphics standard Vulkan 1.3 e phatlalalitsoe

Ka mor'a lilemo tse peli tsa mosebetsi, graphics standards consortium Khronos e phatlalalitse tlhaloso ea Vulkan 1.3, e hlalosang API bakeng sa ho fihlella litšoantšo le bokhoni ba lik'homphieutha tsa GPUs. Tlhaloso e ncha e kenyelletsa litokiso le likeketso tse bokelletsoeng ka lilemo tse peli. Ho hlokometsoe hore litlhoko tsa litlhaloso tsa Vulkan 1.3 li etselitsoe lisebelisoa tsa litšoantšo tsa sehlopha sa OpenGL ES 3.1, tse tla netefatsa tšehetso bakeng sa API e ncha ea litšoantšo ho li-GPU tsohle tse tšehetsang Vulkan 1.2. Lisebelisoa tsa Vulkan SDK li reretsoe ho phatlalatsoa bohareng ba Hlakola. Ho phaella ho tlhaloso e kholo, ho reriloe ho fana ka lisebelisoa tse eketsehileng bakeng sa lisebelisoa tsa mohala le tsa lik'homphieutha tsa boemo bo bohareng le tse phahameng, tse tla tšehetsoa e le karolo ea khatiso ea "Vulkan Milestone".

Ka nako e ts'oanang, ho hlahisoa moralo oa ho kenya ts'ebetsong ts'ehetso bakeng sa litlhaloso tse ncha le lisebelisoa tse eketsehileng tsa likarete tsa litšoantšo le lisebelisoa tsa lisebelisoa. Intel, AMD, ARM le NVIDIA li itokisetsa ho lokolla lihlahisoa tse tšehetsang Vulkan 1.3. Mohlala, AMD e phatlalalitse hore haufinyane e tla ts'ehetsa Vulkan 1.3 lethathamong la likarete tsa litšoantšo tsa AMD Radeon RX Vega, hammoho le likarete tsohle tse ipapisitseng le meralo ea AMD RDNA. NVIDIA e itokisetsa ho phatlalatsa bakhanni ka tšehetso bakeng sa Vulkan 1.3 bakeng sa Linux le Windows. ARM e tla eketsa tšehetso bakeng sa Vulkan 1.3 ho Mali GPUs.

Litlhahiso tse ka sehloohong:

  • Ts'ehetso bakeng sa lipasa tsa phetolelo tse nolofalitsoeng (Streamlining Render Passes, VK_KHR_dynamic_rendering) e kentsoe ts'ebetsong, e u lumellang hore u qale ho fana ntle le ho theha lipasete tsa ho fana le lintho tsa framebuffer.
  • Likatoloso tse ncha li kenyellelitsoe ho nolofatsa taolo ea pokello ea lipeipi tsa lits'oants'o (pipeline, sete sa ts'ebetso e fetolang litšoantšo tsa khale tsa vector le sebopeho hore e be lipontšo tsa pixel).
    • VK_EXT_extended_dynamic_state, VK_EXT_extended_dynamic_state2 - eketsa linaha tse ling tse matla ho fokotsa palo ea lintho tse hlophisitsoeng le tse khomaretsoeng.
    • VK_EXT_pipeline_creation_cache_control - E fana ka taolo e tsoetseng pele mabapi le hore na lipeipi li hlophisitsoe neng le joang.
    • VK_EXT_pipeline_creation_feedback - E fana ka tlhahisoleseling mabapi le liphaephe tse hlophisitsoeng ho nolofatsa profiling le ho lokisa liphoso.
  • Likarolo tse 'maloa li fetisitsoe ho tloha ho khetho ho ea ho e tlamang. Mohlala, ts'ebetsong ea litšupiso tsa buffer (VK_KHR_buffer_device_address) le mofuta oa memori ea Vulkan, e hlalosang hore na likhoele tse ts'oanang li ka fihlella data e arolelanoang le ts'ebetso ea khokahano, joale lia tlama.
  • Taolo ea sehlopha se senyenyane (VK_EXT_subgroup_size_control) e fanoa e le hore barekisi ba ka fana ka tšehetso bakeng sa boholo ba lihlopha tse ngata 'me ba ntlafatsang ba ka khetha boholo boo ba bo hlokang.
  • Ho fanoe ka katoloso ea VK_KHR_shader_integer_dot_product, e ka sebelisoang ho ntlafatsa ts'ebetso ea meralo ea ho ithuta ka mochini ka lebaka la ho potlakisa lisebelisoa tsa sehlahisoa sa dot.
  • Kakaretso e ncha ea 23 e kenyelelitsoe:
    • 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
    • Mefuta ea 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_datha_e leng lekunutu
    • VK_EXT_shader_demote_to_helper_vocation
    • VK_EXT_subgroup_size_control
    • VK_EXT_texel_buffer_ lekhetho
    • VK_EXT_texture_compression_astc_hdr
    • VK_EXT_tooling_info
    • VK_EXT_ycbcr_2plane_444_formats
  • E kentse ntho e ncha VkPrivateDataSlot. Ho ile ha kengoa tšebetsong litaelo tse ncha tse 37 le meaho e fetang 60.
  • Litlhaloso tsa SPIR-V 1.6 li nchafalitsoe ho hlalosa boemeli ba shader ba mahareng bo fumanehang hohle bakeng sa lipolanete tsohle mme bo ka sebelisoa bakeng sa litšoantšo le komporo e tšoanang. SPIR-V e kenyelletsa ho arola karolo e arohaneng ea pokello ea shader hore e be kemelo e mahareng, e u lumellang ho theha li-frontend tsa lipuo tse fapaneng tsa boemo bo holimo. Ho ipapisitsoe le lits'ebetso tse fapaneng tsa maemo a holimo, khoutu e le 'ngoe ea mahareng e hlahisoa ka thoko, e ka sebelisoang ke bakhanni ba OpenGL, Vulkan le OpenCL ntle le ho sebelisa sephutheloana sa shader se hahiloeng.
  • Khopolo ea li-profaele tse lumellanang e hlahisoa. Google ke ea pele ea ho lokolla boemo ba motheo bakeng sa sethala sa Android, se tla etsa hore ho be bonolo ho fumana boemo ba tšehetso bakeng sa bokhoni bo tsoetseng pele ba Vulkan mochine o fetang tlhaloso ea Vulkan 1.0. Bakeng sa lisebelisoa tse ngata, tšehetso ea profil e ka fanoa ntle le ho kenya liapdeite tsa OTA.

A re hopoleng hore Vulkan API e hlokomeleha ka ho nolofatsa ho matla ha bakhanni, phetisetso ea litaelo tsa GPU ho lehlakoreng la ts'ebeliso, bokhoni ba ho hokahanya likarolo tsa ho lokisa liphoso, ho kopanya API bakeng sa liforomo tse fapaneng le ts'ebeliso ea e hlophisitsoeng esale pele. kemelo ea mahareng ea khoutu bakeng sa ts'ebetso ka lehlakoreng la GPU. Ho netefatsa ts'ebetso e phahameng le ho tseba esale pele, Vulkan e fana ka lits'ebetso tse nang le taolo e tobileng holim'a ts'ebetso ea GPU le ts'ehetso ea matsoalloa bakeng sa likhoele tse ngata tsa GPU, e fokotsang hlooho ea bakhanni le ho etsa hore bokhoni ba lehlakoreng la bakhanni bo be bonolo le ho lebelloa ho feta. Mohlala, lits'ebetso tse joalo ka taolo ea memori le ho sebetsana le liphoso, tse kentsoeng ho OpenGL ka lehlakoreng la mokhanni, li isoa boemong ba ts'ebeliso ho Vulkan.

Vulkan e akaretsa lipolanete tsohle tse fumanehang 'me e fana ka API e le' ngoe bakeng sa komporo, selefouno, le webo, e lumellang API e le 'ngoe e tloaelehileng hore e sebelisoe ho li-GPU tse ngata le lits'ebetso. Ka lebaka la meralo ea Vulkan ea meralo e mengata, e bolelang lisebelisoa tse sebetsang le GPU efe kapa efe, li-OEM li ka sebelisa lisebelisoa tse tloaelehileng tsa indasteri bakeng sa tlhahlobo ea khoutu, ho lokisa liphoso le ho hlahisa profil nakong ea nts'etsopele. Bakeng sa ho theha li-shader, ho hlahisoa kemelo e ncha e nkehang ea mahareng, SPIR-V, e ipapisitseng le LLVM le ho arolelana mahlale a mantlha le OpenCL. Ho laola lisebelisoa le li-skrini, Vulkan e fana ka sebopeho sa WSI (Window System Integration), se rarollang mathata a batlang a tšoana le a EGL ho OpenGL ES. Ts'ehetso ea WSI e fumaneha ka ntle ho lebokose la Wayland - lits'ebetso tsohle tse sebelisang Vulkan li ka sebetsa sebakeng sa li-server tsa Wayland tse sa fetoloang. Bokhoni ba ho sebetsa ka WSI bo boetse bo fanoa bakeng sa Android, X11 (e nang le DRI3), Windows, Tizen, macOS le iOS.

Source: opennet.ru

Eketsa ka tlhaloso