Grafike standert Vulkan 1.2 publisearre

It Khronos-konsortium, dat grafyske noarmen ûntwikkelet,
publisearre spesifikaasje Vulkan 1.2, dy't in API definiearret foar tagong ta de grafiken en komputermooglikheden fan 'e GPU. De nije spesifikaasje omfettet korreksjes sammele oer twa jier en Untfongen fan "http://fy.wikipedia.org/w/index.php?. Bestjoerders dy't de nije ferzje fan Vulkan stypje binne al frijlitten Intel bedriuw, AMD, ARM, Imagination Technologies en NVIDIA. Mesa biedt Vulkan 1.2-stipe foar bestjoerders RADV (AMD kaarten) en ANV (Intel). Vulkan 1.2-stipe wurdt ek ymplementearre yn 'e debugger RenderDoc 1.6, LunarG Vulkan SDK en in set fan foarbylden Vulkan-Samples.

haad ynnovaasjes:

  • By dy brocht ymplemintaasje fan in shader-programmearringstaal oant klear foar wiidferspraat gebrûk HLSL, ûntwikkele troch Microsoft foar DirectX. HLSL-stipe yn Vulkan makket it mooglik om deselde HLSL-shaders te brûken yn applikaasjes basearre op Vulkan en DirectX, en simplifies ek de oersetting fan HLSL nei SPIR-V. Om shaders te kompilearjen, wurdt suggerearre om in standert kompilator te brûken
    DXC, dat waard iepene troch Microsoft yn 2017 en is basearre op LLVM technology. Vulkan-stipe wurdt ymplementearre fia in aparte backend, wêrtroch jo HLSL kinne oersette yn in tuskenlizzende fertsjintwurdiging fan SPIR-V-shaders. De ymplemintaasje beslacht net allinich alle ynboude mooglikheden
    HLSL, ynklusyf wiskundige typen, kontrôle streamt, funksjes, sets, boarne typen, nammeromten, Shader Model 6.2, struktueren en metoaden, mar ek lit it brûken fan Vulkan-spesifike útwreidings lykas VKRay út NVIDIA. Yn HLSL-modus boppe op Vulkan wie it mooglik om it wurk fan spultsjes te organisearjen lykas Destiny 2, Red Dead Redemption II, Assassin's Creed Odyssey en Tomb Raider.

    Grafike standert Vulkan 1.2 publisearre

  • Spesifikaasje bywurke SPIR-V 1.5, dy't in tuskenlizzende fertsjintwurdiging fan shaders definiearret dy't universeel is foar alle platfoarms en kin brûkt wurde foar sawol grafiken as parallele komputer.
    SPIR-V giet it om it skieden fan in aparte shader-kompilaasjefaze yn in tuskenlizzende fertsjintwurdiging, wêrtroch jo frontends kinne meitsje foar ferskate talen op heech nivo. Op grûn fan ferskate ymplemintaasjes op heech nivo wurdt in inkele tuskenlizzende koade apart generearre, dy't brûkt wurde kin troch OpenGL, Vulkan en OpenCL-bestjoerders sûnder de ynboude shader-kompiler te brûken.

    Grafike standert Vulkan 1.2 publisearre

  • De kearn Vulkan API omfettet 23 tafoegings dy't prestaasjes ferheegje, renderingskwaliteit ferbetterje en ûntwikkeling ferienfâldigje. Under de tafoege tafoegings:
    • Kronologyske semafoaren (Timeline semafoor), ferienigje syngronisaasje mei de host- en apparaat wachtrijen (wêrtroch jo ien primitive brûke kinne foar omnidireksjoneel syngronisaasje tusken it apparaat en de host, sûnder aparte VkFence- en VkSemaphore-primitiven te brûken). Nije semafoaren wurde fertsjintwurdige troch in monotoanysk tanimmende 64-bit wearde dy't kin wurde folge en bywurke oer meardere triedden.
      Grafike standert Vulkan 1.2 publisearre

    • Mooglikheid om numerike typen te brûken mei fermindere presyzje yn shaders;
    • HLSL kompatibel ûnthâld opmaak opsje;
    • Unbound boarnen (bindless), dy't ferwideret de beheining op it oantal boarnen beskikber foar shaders troch de dielde firtuele romte fan systeemûnthâld en GPU-ûnthâld te brûken;
    • Formeel model fan ûnthâld, dy't definiearret hoe't tagelyk threaden tagong kinne ta dielde gegevens en syngronisaasje operaasjes;
    • Descriptor yndeksearring om opmaakbeskriuwers opnij te brûken oer meardere shaders;
    • Buffer keppelings.

    Folsleine list fan tafoege tafoegings:

  • Tafoege mear as 50 nije struktueren en 13 funksjes;
  • Ferkoarte ferzjes fan 'e spesifikaasje binne taret foar typyske doelplatfoarms, it ferienfâldigjen fan wurk op platfoarms dêr't alle útwreidingen noch net stipe wurde, en lit ien dwaan sûnder selektive aktivearring fan' e basismooglikheden fan 'e Vulkan API.
  • Wurk bliuwt oan it projekt om portabiliteit te garandearjen mei oare grafyske API's. Vulkan biedt bygelyks tafoegings oan dy't OpenGL-oersetting tastean (zink), OpenCL (clspv, clvk), OpenGL ES (GLOVE, Angle) en DirectX (DXVK, vkd3d) fia de Vulkan API, en ek, oarsom, om Vulkan yn te skeakeljen om op platfoarms te wurkjen sûnder syn native stipe (gfx-rs и Asjingen foar wurkjen boppe op OpenGL en DirectX, MoltenVK en gfx-rs foar wurkjen boppe op Metal).
    Tafoegings tafoegde om kompatibiliteit te ferbetterjen mei DirectX en 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, en SPIR-V ymplemintearret spesifike HLSL-mooglikheden.

Plannen foar de takomst omfetsje de ûntwikkeling fan tafoegings foar masine learen, ray tracing, fideokodearjen en dekodearjen, stipe foar VRS (fariabele taryf shading) en Mesh shaders.

Tink derom dat de Vulkan API opmerklik radikaal ferienfâldigjen fan bestjoerders, it ferpleatsen fan de generaasje fan GPU-kommando's nei de applikaasjekant, de mooglikheid om debug-lagen te ferbinen, de API te ferienigjen foar ferskate platfoarms en in foarkompilearre tuskenfoarstelling fan koade te brûken foar útfiering oan 'e GPU-kant. Om hege prestaasjes en foarsisberens te garandearjen, leveret Vulkan applikaasjes mei direkte kontrôle oer GPU-operaasjes en native stipe foar GPU-multy-threading, dy't minimalisearret bestjoerderoverhead en makket mooglikheden oan 'e sjauffeur folle ienfâldiger en mear foarsisber. Bygelyks, operaasjes lykas ûnthâld behear en flater ôfhanneling, ymplemintearre yn OpenGL oan de bestjoerder kant, ferpleatst nei it tapassing nivo yn Vulkan.

Vulkan spant alle beskikbere platfoarms en leveret ien API foar buroblêd, mobyl en web, wêrtroch ien mienskiplike API kin wurde brûkt oer meardere GPU's en applikaasjes. Mei tank oan Vulkan's multi-layer-arsjitektuer, wat ark betsjuttet dy't wurkje mei elke GPU, kinne OEM's gebrûk meitsje fan yndustrystandert ark foar koadebeoardieling, debuggen en profilearjen tidens ûntwikkeling. Foar it meitsjen fan shaders wurdt in nije draachbere tuskenfertsjintwurdiging, SPIR-V, foarsteld, basearre op LLVM en dielen fan kearntechnologyen mei OpenCL. Om apparaten en skermen te kontrolearjen, biedt Vulkan de WSI (Window System Integration) ynterface, dy't sawat deselde problemen oplost as EGL yn OpenGL ES. WSI-stipe is út it fak beskikber yn Wayland - alle applikaasjes mei Vulkan kinne rinne yn in omjouwing fan net wizige Wayland-tsjinners. De mooglikheid om te wurkjen fia WSI wurdt ek foarsjoen foar Android, X11 (mei DRI3), Windows, Tizen, macOS en iOS.

Boarne: opennet.ru

Add a comment