{"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\/it\/blog\/news\/ape-novaya-otkrytaya-programmnaya-realizacziya-vulkan-icd","title":{"rendered":"Ape \u2014 una nuova implementazione software aperta del Vulkan ICD","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex>      <noindex><\/p>\n<p>Presentato <a rel=\"nofollow\" href=\"https:\/\/git.kbz8.me\/kbz_8\/VulkanDriver\">nuovo esperimento<\/a> driver Vulkan <strong>Ape<\/strong> \u2014 implementazione software open source dell'ICD Vulkan, scritta quasi interamente in <strong>Zig<\/strong> e non utilizza il codice di Mesa. Il progetto non \u00e8 ancora destinato a scopi industriali: l'autore lo descrive esplicitamente come un tentativo didattico di \"assemblare un driver a mano\" e avverte di non utilizzare Ape in progetti seri. Il codice \u00e8 pubblicato sotto licenza <strong>MIT<\/strong>.<\/p>\n<p><\/noindex><\/noindex><br \/>\n<noindex><\/p>\n<p>L'interesse per Ape \u00e8 emerso dopo che <a rel=\"nofollow\" href=\"https:\/\/github.com\/KhronosGroup\/Vulkan-Docs\/pull\/2762\">\u00e8 stata aggiunta una vendor ID separata alla specifica<\/a> per il <strong>Ape<\/strong> e un driver ID per <strong>ApeSoft<\/strong>. La relativa pull request nel repository KhronosGroup\/Vulkan-Docs \u00e8 stata unita <strong>6 giugno 2026<\/strong>. Nella nota, l'autore ha indicato di lavorare a un driver Vulkan amatoriale e di essere vicino a superare tutti i test Vulkan 1.0.<\/p>\n<p><\/noindex><\/p>\n<p>In sostanza, Ape non \u00e8 un driver per una specifica scheda video, ma <strong>un renderer Vulkan software<\/strong>, simile a Mesa Lavapipe: i comandi Vulkan vengono eseguiti dalla propria implementazione, senza fare riferimento al driver GPU hardware. Inoltre, Ape non \u00e8 basato su Mesa ed \u00e8 scritto come base di codice autonoma in Zig.<\/p>\n<h3>Cosa sa gi\u00e0 fare Ape<\/h3>\n<ul>\n<li>\n<p><strong>Funziona come ICD Vulkan.<\/strong><br \/>\nApe \u00e8 progettato come <strong>Installable Client Driver<\/strong> \u2014 cio\u00e8 come un driver che pu\u00f2 essere rilevato dal loader Vulkan standard tramite il manifesto ICD. Dopo la compilazione, l'autore suggerisce di indicare al loader Vulkan il file manifesto corrispondente. Questo rende il progetto non solo un insieme di esperimenti, ma una vera e propria implementazione di un driver Vulkan, anche se didattico. Il loader Vulkan \u00e8 progettato per rilevare e collegare pi\u00f9 driver ICD nel sistema.<\/p>\n<\/li>\n<li>\n<p><strong>Completamente scritto in Zig.<\/strong><br \/>\nLa principale base di codice di Ape \u00e8 scritta in Zig; nella pagina principale del progetto, il linguaggio \u00e8 indicato come <strong>Zig 99,9%<\/strong>. Phoronix sottolinea che il progetto non dipende da Mesa ed \u00e8 implementato specificamente in Zig, e non in C\/C++. I driver grafici sono tradizionalmente scritti in C\/C++, e Ape dimostra che l'ICD Vulkan pu\u00f2 essere realizzato anche in un linguaggio di sistema pi\u00f9 moderno.<\/p>\n<\/li>\n<li>\n<p><strong>C'\u00e8 una implementazione software di ApeSoft.<\/strong><br \/>\nNel progetto \u00e8 presente una implementazione software <strong>Morbido<\/strong>, che si trova all'interno della stessa base di codice del driver. Utilizza un proprio <strong>interprete SPIR-V<\/strong> e un proprio renderer. Ape non si limita a ricevere le chiamate Vulkan, ma cerca di eseguire shader e renderizzazione sul CPU.<\/p>\n<\/li>\n<li>\n<p><strong>Supporta la compilazione tramite Zig build.<\/strong><br \/>\nPer l'implementazione software, nel README \u00e8 indicato il modo di compilazione con il comando zig build soft. Dopo di che bisogna configurare il loader Vulkan sul manifesto ICD. Finora \u00e8 chiaramente uno strumento per sviluppatori e appassionati, non un pacchetto \"installato e avviato\".<\/p>\n<\/li>\n<li>\n<p><strong>\u00c8 stata implementata una parte significativa di Vulkan 1.0.<\/strong><br \/>\nNel README \u00e8 presente un elenco dello stato delle funzioni Vulkan 1.0. Tra quelle implementate ci sono la creazione di istanze e dispositivi, allocazione di memoria, buffer, immagini, command buffers, render pass, framebuffer, graphics pipeline, compute pipeline, shader modules, descriptor sets, swapchain e comandi di rendering di base. In termini di funzioni implementate, il progetto ha gi\u00e0 superato l'esperimento del \"triangolo ciao\", ma deve ancora affrontare una verifica e chiudere i posti incompleti prima di poter essere considerato un driver compatibile.<\/p>\n<\/li>\n<li>\n<p><strong>Ci sono comandi di rendering e compute.<\/strong><br \/>\nNell'elenco delle funzioni implementate si notano vkCmdDraw, vkCmdDrawIndexed, vkCmdDrawIndirect, vkCmdDrawIndexedIndirect, vkCmdDispatch e vkCmdDispatchIndirect. Ape copre non solo le infrastrutture di base di Vulkan, ma anche due scenari chiave dell'API: rendering grafico e pipeline di calcolo.<\/p>\n<\/li>\n<li>\n<p><strong>Supporta swapchain e output tramite Wayland.<\/strong><br \/>\nNello stato di implementazione sono segnati vkCreateSwapchainKHR, vkQueuePresentKHR, vkCreateWaylandSurfaceKHR, cos\u00ec come le verifiche del supporto per la presentazione Wayland. La presenza dello swapchain e della superficie Wayland significa che il driver \u00e8 destinato non solo a test offline, ma anche all'output delle immagini in un vero ambiente desktop Linux.<\/p>\n<\/li>\n<li>\n<p><strong>Parte del WSI per X11 e Windows \u00e8 ancora in lavorazione.<\/strong><br \/>\nvkCreateXcbSurfaceKHR, vkCreateXlibSurfaceKHR, vkCreateWin32SurfaceKHR e le funzioni corrispondenti per la verifica del supporto della presentazione sono contrassegnate come WIP. Wayland \u00e8 gi\u00e0 presente, mentre il supporto per X11\/Windows non \u00e8 ancora stato completato.<\/p>\n<\/li>\n<li>\n<p><strong>Alcuni elementi di Vulkan 1.0 non sono ancora pronti o supportati.<\/strong><br \/>\nNello stato WIP sono segnati, ad esempio, vkCreatePipelineCache, vkCreateSemaphore, vkGetQueryPoolResults, vkMergePipelineCaches, parte degli stati dinamici e dei comandi di timestamp. Le funzioni sparse come vkQueueBindSparse e vkGetImageSparseMemoryRequirements sono contrassegnate come non supportate. Ape \u00e8 vicino a Vulkan 1.0 per copertura, ma non \u00e8 ancora una sostituzione universale per un normale driver Vulkan.<\/p>\n<\/li>\n<li>\n<p><strong>Sono stati apportati aggiornamenti recenti al rendering e alla sincronizzazione.<\/strong><br \/>\nNella cronologia del progetto, il 5-6 giugno sono stati segnati cambiamenti come l'aggiunta del primitive restart, campionamento delle texture intere, gestione di mip\/lod durante il campionamento e implementazione dei semafori binari. Il progetto si sviluppa attivamente nella direzione della compatibilit\u00e0 pratica con i test di Vulkan e scenari grafici reali.<\/p>\n<\/li>\n<li>\n<p><strong>Il progetto non si pone l'obiettivo delle prestazioni.<\/strong><br \/>\nL'autore afferma chiaramente che Ape \u00e8 stato creato per studiare Vulkan e non mira a essere un driver performante o pronto per la produzione. Ape dovrebbe essere visto come un progetto di ricerca, un'implementazione didattica di Vulkan e un esperimento con Zig, piuttosto che come un concorrente di Mesa RADV, ANV, NVK o Lavapipe.<\/p>\n<\/li>\n<\/ul>\n<p>In sintesi, Ape \u00e8 interessante non perch\u00e9 si possa sostituire Mesa domani, ma perch\u00e9 \u00e8 un'implementazione autonoma di Vulkan ICD in Zig con un proprio interprete SPIR-V, un renderer software e una copertura gi\u00e0 significativa di Vulkan 1.0. Per gli utenti comuni, i benefici sono ancora limitati, ma per i sviluppatori di driver, gli autori di runtime e coloro che studiano la struttura interna di Vulkan, il progetto appare come un interessante laboratorio vivente.<\/p>\n<p>Fonte: <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.0.1 - 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\/it\/blog\/news\/ape-novaya-otkrytaya-programmnaya-realizacziya-vulkan-icd\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\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\/it\/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 nuova implementazione open source dell'ICD Vulkan | ProHoster","description":"\u00c8 stato presentato un nuovo driver Vulkan sperimentale Ape \u2014 un'implementazione software open source di Vulkan ICD, scritta.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/news\/ape-novaya-otkrytaya-programmnaya-realizacziya-vulkan-icd","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","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\/it\/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\/it\/wp-json\/wp\/v2\/posts\/181949","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=181949"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/181949\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=181949"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=181949"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=181949"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}