{"id":113552,"date":"2024-02-12T22:02:43","date_gmt":"2024-02-12T20:02:45","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/opublikovan-instrumentarij-zluda-pozvolyayushhij-zapuskat-cuda-prilozheniya-na-gpu-amd"},"modified":"2024-02-12T22:02:43","modified_gmt":"2024-02-12T20:02:45","slug":"opublikovan-instrumentarij-zluda-pozvolyayushhij-zapuskat-cuda-prilozheniya-na-gpu-amd","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/news\/opublikovan-instrumentarij-zluda-pozvolyayushhij-zapuskat-cuda-prilozheniya-na-gpu-amd","title":{"rendered":"\u00c8 stato pubblicato lo strumento ZLUDA, che consente di eseguire applicazioni CUDA su GPU AMD","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Il progetto ZLUDA ha preparato un'implementazione aperta della tecnologia CUDA per GPU AMD, consentendo di eseguire applicazioni CUDA non modificate con prestazioni simili a quelle delle applicazioni eseguite senza strati. Lo strumento pubblicato garantisce compatibilit\u00e0 binaria con le applicazioni CUDA esistenti, compilate con il compilatore CUDA per GPU NVIDIA. L'implementazione funziona sopra il stack ROCm in corso di sviluppo da parte di AMD e il runtime HIP (Heterogeneous-computing Interface for Portability). Il codice del progetto \u00e8 scritto in Rust e distribuito sotto le licenze MIT e Apache 2.0. \u00c8 supportato il funzionamento in Linux e Windows.      <\/p>\n<p>Il livello per organizzare il funzionamento di CUDA sui sistemi con GPU AMD \u00e8 stato sviluppato negli ultimi due anni, ma il progetto ha una storia pi\u00f9 lunga e inizialmente \u00e8 stato creato per garantire il funzionamento di CUDA su GPU Intel. Il cambiamento nella politica di supporto delle GPU \u00e8 spiegato dal fatto che all'inizio lo sviluppatore di ZLUDA era un dipendente di Intel, ma nel 2021 questa azienda ha considerato che fornire la possibilit\u00e0 di eseguire applicazioni CUDA su GPU Intel non fosse di interesse per il business e non ha accelerato lo sviluppo dell'iniziativa.     <\/p>\n<p>All'inizio del 2022, lo sviluppatore ha lasciato Intel e ha firmato un contratto con AMD per sviluppare un livello di compatibilit\u00e0 con CUDA. AMD ha chiesto durante lo sviluppo di non pubblicizzare l'interesse di AMD per il progetto ZLUDA e di non effettuare commit nel repository pubblico di ZLUDA. Dopo due anni, AMD ha deciso che l'esecuzione di applicazioni CUDA su GPU AMD non fosse di interesse per il business, il che, secondo i termini del contratto, ha permesso allo sviluppatore di rendere pubbliche le proprie lavorazioni. Poich\u00e9 i produttori di GPU hanno smesso di finanziare il progetto, il suo futuro dipende ora dall'interesse della comunit\u00e0 e dalle proposte di collaborazione da parte di altre aziende. Senza supporto esterno, il progetto potrebbe svilupparsi solo in direzioni che interessano personalmente l'autore, come DLSS (Deep Learning Super Sampling).    <\/p>\n<p>Nella sua attuale forma, il livello di qualit\u00e0 dell'implementazione \u00e8 valutato come una versione alpha. Tuttavia, ZLUDA pu\u00f2 gi\u00e0 essere utilizzato per eseguire molte applicazioni CUDA, inclusi Geekbench, 3DF Zephyr, Blender, Reality Capture, LAMMPS, NAMD, waifu2x, OpenFOAM e Arnold. \u00c8 fornito un supporto minimo per primitiva e librerie cuDNN, cuBLAS, cuSPARSE, cuFFT, NCCL e NVML.    <\/p>\n<p>Il primo avvio delle applicazioni CUDA sotto ZLUDA avviene con ritardi significativi, poich\u00e9 ZLUDA esegue la compilazione del codice GPU. Nei successivi avvii, questi ritardi non si verificano, poich\u00e9 il codice compilato viene memorizzato nella cache. Durante l'esecuzione del codice compilato, le prestazioni sono vicine a quelle native. Eseguendo il pacchetto Geekbench su GPU AMD Radeon 6800 XT, la versione del set di test per CUDA, eseguita tramite ZLUDA, ha mostrato prestazioni notevolmente superiori rispetto alla versione basata su OpenCL.     <center><img decoding=\"async\" alt=\"\u00c8 stato pubblicato lo strumento ZLUDA, che consente di eseguire applicazioni CUDA su GPU AMD\" src=\"\/wp-content\/uploads\/2024\/02\/d851080f089fd00c9b35724eed3a3840.png\" style=\"display:block;margin: 0 auto;\" \/><\/center>    <\/p>\n<p>Il supporto ufficiale per l'API CUDA Driver e le parti dell'API CUDA non documentate studiate tramite reverse engineering sono implementati in ZLUDA attraverso la sostituzione delle chiamate di funzione con funzioni equivalenti fornite nel runtime HIP, che \u00e8 molto simile a CUDA. Ad esempio, la funzione cuDeviceGetAttribute() \u00e8 sostituita da hipDeviceGetAttribute(). Analogamente, \u00e8 garantita la compatibilit\u00e0 con le librerie NVIDIA, come NVML, cuBLAS e cuSPARSE; per queste librerie, ZLUDA fornisce librerie di traduzione con lo stesso nome e lo stesso set di funzioni, costruite come estensioni su librerie simili di AMD.     <\/p>\n<p>Il codice GPU delle applicazioni, compilato nella rappresentazione PTX (Parallel Thread Execution), viene traslato inizialmente da un compilatore speciale in una rappresentazione intermedia LLVM IR, sulla quale viene generato il codice binario per GPU AMD.    <center><img decoding=\"async\" alt=\"\u00c8 stato pubblicato lo strumento ZLUDA, che consente di eseguire applicazioni CUDA su GPU AMD\" src=\"\/wp-content\/uploads\/2024\/02\/607b77f27a07c7915211c49a4b405bd6.png\" style=\"display:block;margin: 0 auto;\" \/><\/center><br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=60591\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u043e\u0435\u043a\u0442 ZLUDA \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b \u043e\u0442\u043a\u0440\u044b\u0442\u0443\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 CUDA \u0434\u043b\u044f GPU AMD, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0443\u044e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043d\u0435\u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 CUDA-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e, \u0431\u043b\u0438\u0437\u043a\u043e\u0439 \u043a \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0445 \u0431\u0435\u0437 \u043f\u0440\u043e\u0441\u043b\u043e\u0435\u043a. \u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0431\u0438\u043d\u0430\u0440\u043d\u0443\u044e \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u0441 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c\u0438 CUDA-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438, \u0441\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u043c\u0438 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 CUDA \u0434\u043b\u044f GPU NVIDIA. \u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u043e\u0432\u0435\u0440\u0445 \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0435\u0439 AMD \u0441\u0442\u0435\u043a\u0430 ROCm \u0438 runtime HIP (Heterogeneous-computing Interface for Portability). \u041a\u043e\u0434 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":113553,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-113552","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u043e\u0435\u043a\u0442 ZLUDA \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b \u043e\u0442\u043a\u0440\u044b\u0442\u0443\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 CUDA \u0434\u043b\u044f GPU AMD, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0443\u044e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043d\u0435\u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 CUDA-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e, \u0431\u043b\u0438\u0437\u043a\u043e\u0439 \u043a \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0445 \u0431\u0435\u0437.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/news\/opublikovan-instrumentarij-zluda-pozvolyayushhij-zapuskat-cuda-prilozheniya-na-gpu-amd\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.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\udd47\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439 ZLUDA, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c CUDA-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 GPU AMD | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u043e\u0435\u043a\u0442 ZLUDA \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b \u043e\u0442\u043a\u0440\u044b\u0442\u0443\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 CUDA \u0434\u043b\u044f GPU AMD, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0443\u044e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043d\u0435\u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 CUDA-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e, \u0431\u043b\u0438\u0437\u043a\u043e\u0439 \u043a \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0445 \u0431\u0435\u0437.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/news\/opublikovan-instrumentarij-zluda-pozvolyayushhij-zapuskat-cuda-prilozheniya-na-gpu-amd\" \/>\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=\"2024-02-12T20:02:45+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-02-12T20:02:45+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\udd47 \u00c8 stato pubblicato lo strumento ZLUDA, che consente l'esecuzione di applicazioni CUDA su GPU AMD | ProHoster","description":"Il progetto ZLUDA ha preparato un'implementazione open source della tecnologia CUDA per GPU AMD, consentendo l'esecuzione di applicazioni CUDA non modificate con prestazioni simili a quelle delle applicazioni eseguite nativamente.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/news\/opublikovan-instrumentarij-zluda-pozvolyayushhij-zapuskat-cuda-prilozheniya-na-gpu-amd","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\udd47\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439 ZLUDA, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c CUDA-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 GPU AMD | ProHoster","og:description":"\u041f\u0440\u043e\u0435\u043a\u0442 ZLUDA \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b \u043e\u0442\u043a\u0440\u044b\u0442\u0443\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 CUDA \u0434\u043b\u044f GPU AMD, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0443\u044e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043d\u0435\u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 CUDA-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e, \u0431\u043b\u0438\u0437\u043a\u043e\u0439 \u043a \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0445 \u0431\u0435\u0437.","og:url":"https:\/\/prohoster.info\/it\/blog\/news\/opublikovan-instrumentarij-zluda-pozvolyayushhij-zapuskat-cuda-prilozheniya-na-gpu-amd","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":"2024-02-12T20:02:45+00:00","article:modified_time":"2024-02-12T20:02:45+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\/113552","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\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=113552"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/113552\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media\/113553"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=113552"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=113552"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=113552"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}