{"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\/nl\/blog\/news\/ape-novaya-otkrytaya-programmnaya-realizacziya-vulkan-icd","title":{"rendered":"Ape \u2014 een nieuwe open-source implementatie van Vulkan ICD","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex>      <noindex><\/p>\n<p>Ge\u00efntroduceerd <a rel=\"nofollow\" href=\"https:\/\/git.kbz8.me\/kbz_8\/VulkanDriver\">nieuw experimenteel<\/a> Vulkan-driver <strong>Ape<\/strong> \u2014 een open-source software-implementatie van Vulkan ICD, vrijwel geheel geschreven in <strong>Zig<\/strong> en maakt geen gebruik van Mesa-code. Het project is nog niet bedoeld voor industrieel gebruik: de auteur beschrijft het als een leerervaring om \"met de hand een driver te bouwen\" en waarschuwt tegen het gebruik van Ape in serieuze projecten. De code is gepubliceerd onder de licentie <strong>MIT<\/strong>.<\/p>\n<p><\/noindex><\/noindex><br \/>\n<noindex><\/p>\n<p>Interesse in Ape ontstond nadat <a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/pull\/2762\">een aparte vendor ID voor<\/a> en driver ID voor <strong>Ape<\/strong> ApeSoft <strong>. De overeenkomstige pull request in de repository van KhronosGroup\/Vulkan-Docs is samengevoegd<\/strong>. In de commentaar heeft de auteur aangegeven dat hij werkt aan een amateuristische Vulkan-driver en dat hij bijna alle Vulkan 1.0-tests doorloopt. <strong>op 6 juni 2026<\/strong>In wezen is Ape geen driver voor een specifieke grafische kaart, maar<\/p>\n<p><\/noindex><\/p>\n<p>een softwarematige Vulkan-renderer <strong>, vergelijkbaar met Mesa Lavapipe: Vulkan-commando's worden uitgevoerd door middel van de eigen implementatie, zonder gebruik te maken van de hardware GPU-driver. Ape is daarbij niet gebaseerd op Mesa en is geschreven als een zelfstandige codebasis in Zig.<\/strong>Wat Ape al kan<\/p>\n<h3>Werkt als een Vulkan ICD.<\/h3>\n<ul>\n<li>\n<p><strong>Ape is gepresenteerd als<\/strong><br \/>\nInstallable Client Driver <strong>\u2014 dat wil zeggen als een driver die door de standaard Vulkan-loader kan worden opgepikt via een ICD-manifest. Na het bouwen stelt de auteur voor om de Vulkan-loader naar het bijbehorende manifestbestand te verwijzen. Dit maakt het project niet zomaar een verzameling experimenten, maar een echte implementatie van een Vulkan-driver, zij het een leerproject. De Vulkan-loader is specifiek ontworpen om meerdere ICD-drivers in het systeem te detecteren en aan te sluiten.<\/strong> Volledig geschreven in Zig.<\/p>\n<\/li>\n<li>\n<p><strong>De belangrijkste codebasis van Ape is geschreven in Zig; op de hoofdpagina van het project is de taal aangegeven als<\/strong><br \/>\nZig 99,9% <strong>. Phoronix benadrukt apart dat het project niet afhankelijk is van Mesa en specifiek is ge\u00efmplementeerd in Zig, en niet in C\/C++. Grafische drivers worden traditioneel geschreven in C\/C++, en Ape toont aan dat Vulkan ICD ook in een modernere systeemtaal kan worden ge\u00efmplementeerd.<\/strong>Er is een software-implementatie van ApeSoft.<\/p>\n<\/li>\n<li>\n<p><strong>In het project is er een software-implementatie<\/strong><br \/>\n, die zich binnen de codebasis van de driver bevindt. Het maakt gebruik van een eigen <strong>Zacht<\/strong>SPIR-V-interpreter <strong>en een eigen renderer. Ape accepteert niet alleen Vulkan-aanroepen, maar probeert ook zelf shaders en rendering op de CPU uit te voeren.<\/strong> Ondersteunt bouwen via Zig build.<\/p>\n<\/li>\n<li>\n<p><strong>Opbouw via Zig build wordt ondersteund.<\/strong><br \/>\nVoor de software-implementatie is in README de manier van bouwen beschreven met het commando zig build soft. Daarna moet de Vulkan-loader worden ingesteld op de ICD-manifest. Tot nu toe is dit duidelijk een hulpmiddel voor ontwikkelaars en enthousiastelingen, en geen pakket dat je 'installeert en draait'.<\/p>\n<\/li>\n<li>\n<p><strong>Een aanzienlijk deel van Vulkan 1.0 is ge\u00efmplementeerd.<\/strong><br \/>\nIn de README staat een lijst met de status van de functies van Vulkan 1.0. Onder de ge\u00efmplementeerde functies zijn het maken van instanties en apparaten, geheugenallocatie, buffers, afbeeldingen, commandobuffers, render pass, framebuffer, graphics pipeline, compute pipeline, shader-modules, descriptor sets, swapchain en basis weergavecommando's. Qua set van ge\u00efmplementeerde functies gaat het project al verder dan de 'hello triangle'-experiment, maar moet het nog gecontroleerd worden en de onafgebroken plekken afmaken om statuut van een volledig compatibele driver te verkrijgen.<\/p>\n<\/li>\n<li>\n<p><strong>Er zijn teken- en compute-commando's.<\/strong><br \/>\nIn de lijst van ge\u00efmplementeerde functies zijn vkCmdDraw, vkCmdDrawIndexed, vkCmdDrawIndirect, vkCmdDrawIndexedIndirect, vkCmdDispatch en vkCmdDispatchIndirect gemarkeerd. Ape dekt niet alleen de basisinfrastructuur van Vulkan, maar ook twee sleutelscenario's van de API: grafische rendering en computationele pipelines.<\/p>\n<\/li>\n<li>\n<p><strong>Swapchain en uitvoer via Wayland worden ondersteund.<\/strong><br \/>\nIn de implementatiestatus zijn vkCreateSwapchainKHR, vkQueuePresentKHR, vkCreateWaylandSurfaceKHR en controles op de ondersteuning van Wayland-presentatie gemarkeerd. De aanwezigheid van swapchain en Wayland-oppervlakte betekent dat de driver is gericht op niet alleen offline tests, maar ook op het weergeven van beelden in een echte venstervooruitzicht in Linux.<\/p>\n<\/li>\n<li>\n<p><strong>Een deel van de WSI voor X11 en Windows is nog in ontwikkeling.<\/strong><br \/>\nvkCreateXcbSurfaceKHR, vkCreateXlibSurfaceKHR, vkCreateWin32SurfaceKHR en de bijbehorende functies voor controle op presentatiesupport zijn gemarkeerd als WIP. Wayland is al aanwezig, terwijl de X11\/Windows-ondersteuning nog niet klaar is.<\/p>\n<\/li>\n<li>\n<p><strong>Enkele elementen van Vulkan 1.0 zijn nog niet klaar of worden niet ondersteund.<\/strong><br \/>\nIn de WIP-status staan bijvoorbeeld vkCreatePipelineCache, vkCreateSemaphore, vkGetQueryPoolResults, vkMergePipelineCaches, een deel van de dynamische toestanden en timestamp-commando's. Sparse-functies zoals vkQueueBindSparse en vkGetImageSparseMemoryRequirements zijn gemarkeerd als unsupported. Ape is dicht bij Vulkan 1.0 qua dekking, maar is nog geen universele vervanging voor een normale Vulkan-driver.<\/p>\n<\/li>\n<li>\n<p><strong>Er zijn recente verbeteringen aan rendering en synchronisatie.<\/strong><br \/>\nIn de projectgeschiedenis zijn op 5-6 juni wijzigingen gemarkeerd zoals de toevoeging van primitive restart, integer texture sampling, controle van mip\/lod bij sampling en de implementatie van binaire semaforen. Het project ontwikkelt zich actief in de richting van praktische compatibiliteit met Vulkan-tests en echte grafische scenario's.<\/p>\n<\/li>\n<li>\n<p><strong>Het project heeft geen doelstelling voor prestaties.<\/strong><br \/>\nDe auteur zegt letterlijk dat Ape is ontwikkeld voor het bestuderen van Vulkan en niet als een prestatiegerichte of production-ready driver. Ape moet worden gezien als een onderzoeksproject, een leerimplementatie van Vulkan en een experiment met Zig, en niet als een concurrent van Mesa RADV, ANV, NVK of Lavapipe.<\/p>\n<\/li>\n<\/ul>\n<p>Samenvattend is Ape niet interessant omdat het morgen Mesa kan vervangen, maar omdat het een zelfstandige implementatie van Vulkan ICD is in Zig met een eigen SPIR-V-interpreter, software-renderer en al een aanzienlijke dekking van Vulkan 1.0. Voor gewone gebruikers biedt het momenteel weinig voordelen, maar voor driverontwikkelaars, runtime-auteurs en mensen die de interne werking van Vulkan bestuderen, lijkt het project een fascinerend levend laboratorium.<\/p>\n<p>Bron: <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.3 - 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\/nl\/blog\/news\/ape-novaya-otkrytaya-programmnaya-realizacziya-vulkan-icd\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"nl_NL\" \/>\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\/nl\/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 - nieuwe open-source implementatie van Vulkan ICD | ProHoster","description":"Een nieuwe experimentele Vulkan-driver Ape is ge\u00efntroduceerd - een open-source implementatie van Vulkan ICD, geschreven in Zig.","canonical_url":"https:\/\/prohoster.info\/nl\/blog\/news\/ape-novaya-otkrytaya-programmnaya-realizacziya-vulkan-icd","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"nl_NL","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\/nl\/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\/nl\/wp-json\/wp\/v2\/posts\/181949","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/comments?post=181949"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/181949\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/media?parent=181949"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/categories?post=181949"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/tags?post=181949"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}