{"id":181949,"date":"2026-06-08T14:48:08","date_gmt":"2026-06-08T12:48:08","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/ape-novaya-otkrytaya-programmnaya-realizacziya-vulkan-icd"},"modified":"2026-06-08T14:48:08","modified_gmt":"2026-06-08T12:48:08","slug":"ape-novaya-otkrytaya-programmnaya-realizacziya-vulkan-icd","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sv\/blog\/news\/ape-novaya-otkrytaya-programmnaya-realizacziya-vulkan-icd","title":{"rendered":"Ape \u2014 en ny \u00f6ppen programvaruimplementation av Vulkan ICD","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex>      <noindex><\/p>\n<p>Presenteras <a rel=\"nofollow\" href=\"https:\/\/git.kbz8.me\/kbz_8\/VulkanDriver\">ny experimentell<\/a> Vulkan-drivrutin <strong>Ape<\/strong> \u2014 en \u00f6ppen programvaruimplementation av Vulkan ICD, n\u00e4stan helt skriven p\u00e5 <strong>Zig<\/strong> och anv\u00e4nder inte Mesa-kod. Projektet str\u00e4var \u00e4nnu inte efter industriell till\u00e4mpning: f\u00f6rfattaren beskriver det som ett l\u00e4rande f\u00f6rs\u00f6k att \"bygga en drivrutin f\u00f6r hand\" och varnar f\u00f6r att anv\u00e4nda Ape i seri\u00f6sa projekt. Koden publiceras under en licens <strong>MIT<\/strong>.<\/p>\n<p><\/noindex><\/noindex><br \/>\n<noindex><\/p>\n<p>Intresset f\u00f6r Ape v\u00e4xte efter att <a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/pull\/2762\">i specifikationen<\/a> Vulkan fick en separat vendor-ID f\u00f6r <strong>Ape<\/strong> och driver-ID f\u00f6r <strong>ApeSoft<\/strong>. Den relevanta pull requesten i KhronosGroup\/Vulkan-Docs-arkivet har blivit sammanslagen <strong>6 juni 2026<\/strong>. I kommentaren angav f\u00f6rfattaren att de arbetar med en amat\u00f6r Vulkan-drivrutin och n\u00e4rmar sig att klara alla tester f\u00f6r Vulkan 1.0.<\/p>\n<p><\/noindex><\/p>\n<p>Egentligen \u00e4r Ape inte en drivrutin f\u00f6r ett specifikt grafikkort, utan <strong>en programvarubaserad Vulkan-renderare<\/strong>, n\u00e4ra besl\u00e4ktad med Mesa Lavapipe: Vulkan-kommandon utf\u00f6rs av den egna implementationen, utan att v\u00e4nda sig till den h\u00e5rdvarubaserade GPU-drivrutinen. Samtidigt \u00e4r Ape inte baserad p\u00e5 Mesa och \u00e4r skriven som en sj\u00e4lvst\u00e4ndig kodbas i Zig.<\/p>\n<h3>Vad Ape redan kan<\/h3>\n<ul>\n<li>\n<p><strong>Fungerar som Vulkan ICD.<\/strong><br \/>\nApe \u00e4r utformad som <strong>Installable Client Driver<\/strong> \u2014 allts\u00e5 som en drivrutin som kan f\u00e5ngas upp av den standard Vulkan loadern genom ICD-manifestet. Efter kompilering f\u00f6resl\u00e5r f\u00f6rfattaren att ange Vulkan-loadern till den relevanta manifestfilen. Detta g\u00f6r projektet till mer \u00e4n bara en samling experiment, utan en verklig implementation av en Vulkan-drivrutin, \u00e4ven om det \u00e4r ett utbildningsprojekt. Vulkan-loadern \u00e4r just avsedd f\u00f6r att uppt\u00e4ckta och ansluta flera ICD-drivrutiner i systemet.<\/p>\n<\/li>\n<li>\n<p><strong>Helt skriven i Zig.<\/strong><br \/>\nDen huvudsakliga kodbasen f\u00f6r Ape \u00e4r skriven i Zig; p\u00e5 huvudforge-sidan f\u00f6r projektet anges spr\u00e5ket som <strong>Zig 99,9%<\/strong>. Phoronix betonar s\u00e4rskilt att projektet inte beror p\u00e5 Mesa och \u00e4r implementerat just i Zig, ist\u00e4llet f\u00f6r C\/C++. Grafiska drivrutiner skrivs traditionellt i C\/C++, och Ape visar att Vulkan ICD kan implementeras \u00e4ven p\u00e5 ett modernare systemprogrammeringsspr\u00e5k.<\/p>\n<\/li>\n<li>\n<p><strong>Det finns en programvaruimplementation av ApeSoft.<\/strong><br \/>\nI projektet har en programvaruimplementation uteslutits <strong>Mjuk<\/strong>, som ligger inom sj\u00e4lva kodbasen f\u00f6r drivrutinen. Den anv\u00e4nder sin egen <strong>SPIR-V-tolkar<\/strong> och sin egen renderare. Ape tar inte bara emot Vulkan-anrop, utan f\u00f6rs\u00f6ker ocks\u00e5 sj\u00e4lvst\u00e4ndigt utf\u00f6ra shaders och rendering p\u00e5 CPU:n.<\/p>\n<\/li>\n<li>\n<p><strong>St\u00f6d f\u00f6r byggnation genom Zig build.<\/strong><br \/>\nF\u00f6r den programvaruimplementering som anges i README anv\u00e4nds kommandot zig build soft f\u00f6r att bygga. D\u00e4refter m\u00e5ste Vulkan-laddaren konfigureras med ICD-manifestet. Detta \u00e4r fortfarande tydligt ett verktyg f\u00f6r utvecklare och entusiaster, snarare \u00e4n ett paket f\u00f6r \u00abinstallera och k\u00f6ra\u00bb.<\/p>\n<\/li>\n<li>\n<p><strong>En betydande del av Vulkan 1.0 har implementerats.<\/strong><br \/>\nI README finns en lista \u00f6ver statusen f\u00f6r Vulkan 1.0-funktioner. Bland de implementerade finns skapande av instans och enhet, minnesallokering, buffertar, bilder, kommandobuffertar, renderpass, framebuffer, grafikpipeline, ber\u00e4kningspipeline, shadermoduler, deskriptorsatser, swapchain och grundl\u00e4ggande renderingskommandon. Genom upps\u00e4ttningen av implementerade funktioner har projektet redan g\u00e5tt l\u00e4ngre \u00e4n \u00abhello triangle\u00bb-experimentet, men f\u00f6r att uppn\u00e5 status som en fullst\u00e4ndig kompatibel drivrutin beh\u00f6ver det fortfarande genomg\u00e5 tester och avsluta utest\u00e5ende delar.<\/p>\n<\/li>\n<li>\n<p><strong>Det finns renderings- och ber\u00e4kningskommandon.<\/strong><br \/>\nI listan \u00f6ver implementerade funktioner noteras vkCmdDraw, vkCmdDrawIndexed, vkCmdDrawIndirect, vkCmdDrawIndexedIndirect, vkCmdDispatch och vkCmdDispatchIndirect. Ape t\u00e4cker inte bara den grundl\u00e4ggande infrastrukturen f\u00f6r Vulkan, utan \u00e4ven tv\u00e5 viktiga API-scenario: grafisk rendering och ber\u00e4kningspipelines.<\/p>\n<\/li>\n<li>\n<p><strong>Swapchain och utdata via Wayland st\u00f6ds.<\/strong><br \/>\nI implementationsstatusen noteras vkCreateSwapchainKHR, vkQueuePresentKHR, vkCreateWaylandSurfaceKHR, samt kontroller f\u00f6r st\u00f6d f\u00f6r Wayland-presentation. N\u00e4rvaron av swapchain och Wayland-yta inneb\u00e4r att drivrutinen \u00e4r inriktad p\u00e5 inte bara offline-tester, utan ocks\u00e5 p\u00e5 att producera grafik i en verklig f\u00f6nsterhanteringsmilj\u00f6 i Linux.<\/p>\n<\/li>\n<li>\n<p><strong>Delen WSI f\u00f6r X11 och Windows \u00e4r fortfarande under arbete.<\/strong><br \/>\nvkCreateXcbSurfaceKHR, vkCreateXlibSurfaceKHR, vkCreateWin32SurfaceKHR och motsvarande funktioner f\u00f6r kontroller av presentationsst\u00f6d \u00e4r markerade som WIP. Wayland \u00e4r redan n\u00e4rvarande, medan X11\/Windows-st\u00f6det \u00e4nnu inte \u00e4r helt f\u00e4rdigt.<\/p>\n<\/li>\n<li>\n<p><strong>Vissa delar av Vulkan 1.0 \u00e4r fortfarande inte klara eller st\u00f6ds inte.<\/strong><br \/>\nI WIP-statusen n\u00e4mns till exempel vkCreatePipelineCache, vkCreateSemaphore, vkGetQueryPoolResults, vkMergePipelineCaches, vissa dynamiska tillst\u00e5nd och timestamp-kommandon. Sparse-funktioner som vkQueueBindSparse och vkGetImageSparseMemoryRequirements har markerats som unsupported. Ape n\u00e4rmar sig Vulkan 1.0 i omfattning, men \u00e4r fortfarande inte en universell ers\u00e4ttning f\u00f6r en riktig Vulkan-drivrutin.<\/p>\n<\/li>\n<li>\n<p><strong>Det har kommit nya uppdateringar f\u00f6r rendering och synkronisering.<\/strong><br \/>\nI projektets historia den 5\u20136 juni noterades f\u00f6r\u00e4ndringar som till\u00e4gg av primitive restart, integer texture sampling, hantering av mip\/lod vid sampling och implementering av bin\u00e4ra semaforer. Projektet utvecklas aktivt mot praktisk kompatibilitet med Vulkan-tester och verkliga grafiska scenarier.<\/p>\n<\/li>\n<li>\n<p><strong>Projektet syftar inte till prestanda.<\/strong><br \/>\nF\u00f6rfattaren p\u00e5st\u00e5r direkt att Ape \u00e4r skapat f\u00f6r att studera Vulkan och str\u00e4var inte efter att vara en produktionsklar eller h\u00f6gpresterande drivrutin. Ape b\u00f6r uppfattas som ett forskningsprojekt, en utbildningsimplementering av Vulkan och ett experiment med Zig, snarare \u00e4n en konkurrent till Mesa RADV, ANV, NVK eller Lavapipe.<\/p>\n<\/li>\n<\/ul>\n<p>Sammanfattningsvis \u00e4r Ape intressant inte f\u00f6r att man kan ers\u00e4tta Mesa med den imorgon, utan f\u00f6r att det \u00e4r en sj\u00e4lvst\u00e4ndig implementering av Vulkan ICD p\u00e5 Zig med en egen SPIR-V-tolkare, programvarurenare och redan m\u00e4rkbart st\u00f6d f\u00f6r Vulkan 1.0. F\u00f6r vanliga anv\u00e4ndare finns det fortfarande lite nytta, men f\u00f6r drivrutinsutvecklare, skapare av milj\u00f6er och m\u00e4nniskor som studerar Vulkan inre funktioner ser projektet ut som en fascinerande levande experimentanl\u00e4ggning.<\/p>\n<p>K\u00e4lla: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/news\/opensource\/18313195\">linux.org.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u043d\u043e\u0432\u044b\u0439 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u044b\u0439 Vulkan-\u0434\u0440\u0430\u0439\u0432\u0435\u0440 Ape \u2014 \u043e\u0442\u043a\u0440\u044b\u0442\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f Vulkan ICD, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f \u043f\u043e\u0447\u0442\u0438 \u0446\u0435\u043b\u0438\u043a\u043e\u043c \u043d\u0430 Zig \u0438 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0430\u044f \u043a\u043e\u0434 Mesa. \u041f\u0440\u043e\u0435\u043a\u0442 \u043f\u043e\u043a\u0430 \u043d\u0435 \u043f\u0440\u0435\u0442\u0435\u043d\u0434\u0443\u0435\u0442 \u043d\u0430 \u043f\u0440\u043e\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u043e\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435: \u0430\u0432\u0442\u043e\u0440 \u043f\u0440\u044f\u043c\u043e \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442 \u0435\u0433\u043e \u043a\u0430\u043a \u0443\u0447\u0435\u0431\u043d\u0443\u044e \u043f\u043e\u043f\u044b\u0442\u043a\u0443 \u00ab\u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0434\u0440\u0430\u0439\u0432\u0435\u0440 \u0440\u0443\u043a\u0430\u043c\u0438\u00bb \u0438 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0430\u0435\u0442 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Ape \u0432 \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u044b\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445. \u041a\u043e\u0434 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 MIT. \u0418\u043d\u0442\u0435\u0440\u0435\u0441 \u043a Ape \u043f\u043e\u044f\u0432\u0438\u043b\u0441\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":8,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-181949","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u043d\u043e\u0432\u044b\u0439 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u044b\u0439 Vulkan-\u0434\u0440\u0430\u0439\u0432\u0435\u0440 Ape \u2014 \u043e\u0442\u043a\u0440\u044b\u0442\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f Vulkan ICD, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Erik Peterson\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sv\/blog\/news\/ape-novaya-otkrytaya-programmnaya-realizacziya-vulkan-icd\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sv_SE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Ape \u2014 \u043d\u043e\u0432\u0430\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f Vulkan ICD | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u043d\u043e\u0432\u044b\u0439 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u044b\u0439 Vulkan-\u0434\u0440\u0430\u0439\u0432\u0435\u0440 Ape \u2014 \u043e\u0442\u043a\u0440\u044b\u0442\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f Vulkan ICD, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sv\/blog\/news\/ape-novaya-otkrytaya-programmnaya-realizacziya-vulkan-icd\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-06-08T12:48:08+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-06-08T12:48:08+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Ape \u2014 en ny \u00f6ppen programvaruimplementering av Vulkan ICD | ProHoster","description":"En ny experimentell Vulkan-drivrutin Ape har presenterats \u2014 en \u00f6ppen programvaruimplementering av Vulkan ICD, skriven.","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/news\/ape-novaya-otkrytaya-programmnaya-realizacziya-vulkan-icd","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Ape \u2014 \u043d\u043e\u0432\u0430\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f Vulkan ICD | ProHoster","og:description":"\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u043d\u043e\u0432\u044b\u0439 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u044b\u0439 Vulkan-\u0434\u0440\u0430\u0439\u0432\u0435\u0440 Ape \u2014 \u043e\u0442\u043a\u0440\u044b\u0442\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f Vulkan ICD, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f.","og:url":"https:\/\/prohoster.info\/sv\/blog\/news\/ape-novaya-otkrytaya-programmnaya-realizacziya-vulkan-icd","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2026-06-08T12:48:08+00:00","article:modified_time":"2026-06-08T12:48:08+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/181949","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=181949"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/181949\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=181949"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=181949"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=181949"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}