Grafik estanda Vulkan 1.3 pibliye

Apre dezan travay, konsòsyòm estanda grafik Khronos te pibliye spesifikasyon Vulkan 1.3, ki defini yon API pou jwenn aksè nan grafik ak kapasite enfòmatik GPU yo. Nouvo spesifikasyon enkòpore koreksyon ak ekstansyon akimile sou dezan. Li te note ke kondisyon yo nan spesifikasyon Vulkan 1.3 yo fèt pou ekipman grafik klas OpenGL ES 3.1, ki pral asire sipò pou nouvo API grafik nan tout GPU ki sipòte Vulkan 1.2. Zouti Vulkan SDK yo planifye pou pibliye nan mitan mwa fevriye. Anplis spesifikasyon prensipal la, li planifye pou ofri ekstansyon adisyonèl pou aparèy mobil ak Desktop mitan-ranje ak segondè, ki pral sipòte kòm yon pati nan edisyon "Vulkan Milestone".

An menm tan an, yo prezante yon plan pou aplike sipò pou nouvo spesifikasyon ak ekstansyon adisyonèl nan kat grafik ak chofè aparèy. Intel, AMD, ARM ak NVIDIA ap prepare pou lage pwodwi ki sipòte Vulkan 1.3. Pou egzanp, AMD te anonse ke li pral byento sipòte Vulkan 1.3 nan seri AMD Radeon RX Vega nan kat grafik, osi byen ke nan tout kat ki baze sou achitekti AMD RDNA. NVIDIA ap prepare pou pibliye chofè ak sipò pou Vulkan 1.3 pou Linux ak Windows. ARM pral ajoute sipò pou Vulkan 1.3 nan Mali GPU.

Prensipal inovasyon:

  • Sipò pou pas rann senplifye (Rasyonalize pas rann, VK_KHR_dynamic_rendering) te aplike, ki pèmèt ou kòmanse rann san yo pa kreye pas rann ak objè framebuffer.
  • Nouvo ekstansyon yo te ajoute pou senplifye jesyon konpilasyon tiyo grafik (pipeline, yon seri operasyon ki vire primitif grafik vektè ak tèkstur nan reprezantasyon pixel).
    • VK_EXT_extended_dynamic_state, VK_EXT_extended_dynamic_state2 - ajoute eta dinamik adisyonèl pou diminye kantite objè eta konpile ak tache.
    • VK_EXT_pipeline_creation_cache_control - Bay kontwòl avanse sou lè ak kijan tiyo yo konpile.
    • VK_EXT_pipeline_creation_feedback - Bay enfòmasyon sou tiyo konpile pou fè pwofil ak debogaj pi fasil.
  • Yon kantite karakteristik yo te transfere soti nan opsyonèl nan obligatwa. Pou egzanp, aplikasyon referans tanpon (VK_KHR_buffer_device_address) ak modèl memwa Vulkan, ki defini kouman fil konkouran ka jwenn aksè nan done pataje ak operasyon senkronizasyon, yo kounye a se obligatwa.
  • Yo bay kontwòl sou-gwoup amann (VK_EXT_subgroup_size_control) pou machann yo ka bay sipò pou plizyè gwosè sougwoup ak devlopè yo ka chwazi gwosè yo bezwen.
  • Yo bay ekstansyon VK_KHR_shader_integer_dot_product, ki ka itilize pou optimize pèfòmans kad aprantisaj machin gras ak akselerasyon pyès ki nan konpitè nan operasyon pwodwi dot.
  • Yon total de 23 nouvo agrandisman enkli:
    • VK_KHR_kopi_kòmand2
    • 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_eta_dinamik_pwolonje
    • VK_EXT_extended_dynamic_state2
    • VK_EXT_image_robuste
    • VK_EXT_inline_uniform_block
    • VK_EXT_pipeline_creation_cache_control
    • VK_EXT_pipeline_creation_feedback
    • VK_EXT_done_prive
    • 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
  • Te ajoute yon nouvo kalite objè VkPrivateDataSlot. 37 nouvo kòmandman ak plis pase 60 estrikti yo te aplike.
  • Yo te mete ajou SPIR-V 1.6 spesifikasyon pou defini yon reprezantasyon shader entèmedyè ki inivèsèl pou tout platfòm epi yo ka itilize pou tou de grafik ak informatique paralèl. SPIR-V enplike separe yon faz konpilasyon shader separe nan yon reprezantasyon entèmedyè, ki pèmèt ou kreye entèfas pou plizyè lang wo nivo. Ki baze sou plizyè enplemantasyon wo nivo, se yon sèl kòd entèmedyè pwodwi separeman, ki ka itilize pa OpenGL, Vulkan ak OpenCL chofè san yo pa itilize konpilatè shader entegre.
  • Yo pwopoze konsèp nan pwofil konpatibilite. Google se premye moun ki lage yon pwofil debaz pou platfòm Android a, ki pral rann li pi fasil pou detèmine nivo sipò pou kapasite Vulkan avanse sou yon aparèy ki depase espesifikasyon Vulkan 1.0 la. Pou pifò aparèy, sipò pwofil yo ka bay san yo pa enstale mizajou OTA.

Ann sonje ke Vulkan API a remakab pou senplifikasyon radikal li yo nan chofè yo, transfè jenerasyon an nan kòmandman GPU sou bò aplikasyon an, kapasite nan konekte kouch debogaj, inifikasyon nan API a pou plizyè tribin ak itilizasyon yon prekonpile. reprezantasyon entèmedyè nan kòd pou ekzekisyon sou bò GPU. Pou asire pèfòmans segondè ak previzibilite, Vulkan bay aplikasyon ki gen kontwòl dirèk sou operasyon GPU ak sipò natif natal pou GPU milti-threading, ki minimize anlè chofè a epi ki fè kapasite bò chofè yo pi senp epi pi previzib. Pou egzanp, operasyon tankou jesyon memwa ak manyen erè, aplike nan OpenGL sou bò chofè a, yo deplase nan nivo aplikasyon an nan Vulkan.

Vulkan kouvri tout platfòm ki disponib epi li bay yon sèl API pou Desktop, mobil, ak entènèt, sa ki pèmèt yon sèl API komen yo dwe itilize atravè plizyè GPU ak aplikasyon. Mèsi a achitekti milti-kouch Vulkan a, ki vle di zouti ki travay ak nenpòt GPU, OEM yo ka itilize zouti estanda endistri yo pou revizyon kòd, debogaj, ak pwofil pandan devlopman. Pou kreye shaders, yo pwopoze yon nouvo reprezantasyon entèmedyè pòtab, SPIR-V, ki baze sou LLVM ak pataje teknoloji debaz ak OpenCL. Pou kontwole aparèy ak ekran, Vulkan ofri koòdone WSI (Window System Integration), ki rezoud apeprè menm pwoblèm ak EGL nan OpenGL ES. Sipò WSI disponib soti nan bwat la nan Wayland - tout aplikasyon ki sèvi ak Vulkan ka kouri nan yon anviwònman ki pa modifye sèvè Wayland. Yo bay kapasite pou travay atravè WSI tou pou Android, X11 (ak DRI3), Windows, Tizen, macOS ak iOS.

Sous: opennet.ru

Add nouvo kòmantè