{"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\/hr\/blog\/news\/opublikovan-instrumentarij-zluda-pozvolyayushhij-zapuskat-cuda-prilozheniya-na-gpu-amd","title":{"rendered":"Objavljen alat ZLUDA koji omogu\u0107ava pokretanje CUDA aplikacija na AMD GPU-ima","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Projekt ZLUDA pripremio je otvorenu implementaciju CUDA tehnologije za AMD GPU-ove, omogu\u0107avaju\u0107i izvr\u0161enje neizmijenjenih CUDA aplikacija s performansama bliskim onima aplikacija koje se izvode bez posrednika. Objavljeni alati osiguravaju binarnu kompatibilnost s postoje\u0107im CUDA aplikacijama, kompiliranim pomo\u0107u CUDA kompajlera za NVIDIA GPU. Implementacija radi putem ROCm stoga koji razvija AMD i HIP (Heterogeneous-computing Interface for Portability) runtime-a. Kod projekta napisan je na Rust jeziku i distribuira se pod MIT i Apache 2.0 licencama. Podr\u017eava rad na Linux i Windows platformama.      <\/p>\n<p>Sloj za organizaciju rada CUDA na sustavima s AMD GPU razvijan je posljednje dvije godine, no projekt ima dulju povijest i prvotno je stvoren za omogu\u0107avanje rada CUDA na Intel GPU-ima. Promjena politike podr\u0161ke GPU obja\u0161njava se time \u0161to je inicijalno razvija\u010d ZLUDA bio zaposlenik Intela, no 2021. godine ta je kompanija smatrala da mogu\u0107nost pokretanja CUDA aplikacija na Intel GPU-ima nije zanimljiva za poslovanje i nije nastavila s razvojem inicijative.     <\/p>\n<p>Po\u010detkom 2022. godine razvija\u010d je dao otkaz u Intelu i potpisao ugovor s AMD-om za razvoj sloja za kompatibilnost s CUDA-om. AMD je tijekom razvoja zatra\u017eio da se ne isti\u010de interes AMD-a za projekt ZLUDA i da se ne rade komitmeti u javni repozitorij ZLUDA. Nakon dvije godine, AMD je odlu\u010dio da pokretanje CUDA aplikacija na AMD GPU-ima vi\u0161e nije zanimljivo za poslovanje, \u0161to je prema uvjetima ugovora omogu\u0107ilo razvija\u010du da otkrije svoje radove. Kako su proizvo\u0111a\u010di GPU-a prestali financirati projekt, njegova sudbina sada ovisi o interesu zajednice i prilozima za suradnju od drugih kompanija. Bez vanjske podr\u0161ke projekt \u0107e se vjerojatno razvijati samo u smjerovima koji su osobno zanimljivi autoru, kao \u0161to je DLSS (Deep Learning Super Sampling).    <\/p>\n<p>U trenutnom obliku razina kvalitete implementacije ocjenjuje se kao alfa verzija. Ipak, ZLUDA se ve\u0107 mo\u017ee koristiti za izvr\u0161avanje mnogih CUDA aplikacija, uklju\u010duju\u0107i Geekbench, 3DF Zephyr, Blender, Reality Capture, LAMMPS, NAMD, waifu2x, OpenFOAM i Arnold. Osigurana je minimalna podr\u0161ka za primitive i biblioteke cuDNN, cuBLAS, cuSPARSE, cuFFT, NCCL i NVML.    <\/p>\n<p>Prvo pokretanje CUDA aplikacija pod upravljanjem ZLUDA-a dolazi s primjetnim ka\u0161njenjima jer ZLUDA izvr\u0161ava kompilaciju GPU koda. U sljede\u0107im pokretanjima sli\u010dna ka\u0161njenja ne postoje, jer se kompajlirani kod \u010duva u cache-u. Tijekom izvr\u0161avanja kompajliranog koda, performanse su bliske nativnim. Tijekom izvo\u0111enja Geekbench paketa na GPU AMD Radeon 6800 XT, izvr\u0161en test CUDA skupa koji koristi ZLUDA pokazao je znatno bolje performanse od verzije temeljene na OpenCL-u.     <center><img decoding=\"async\" alt=\"Objavljen alat ZLUDA koji omogu\u0107ava pokretanje CUDA aplikacija na AMD GPU-ima\" src=\"\/wp-content\/uploads\/2024\/02\/d851080f089fd00c9b35724eed3a3840.png\" style=\"display:block;margin: 0 auto;\" \/><\/center>    <\/p>\n<p>Podr\u0161ka za slu\u017ebeni CUDA Driver API i analizirane dijelove nedokumentiranog CUDA API-ja implementirana je u ZLUDA putem zamjene poziva funkcija s odgovaraju\u0107im funkcijama koje nude HIP runtime, koji nalikuje CUDA-i. Na primjer, funkcija cuDeviceGetAttribute() zamjenjuje se s hipDeviceGetAttribute(). Na sli\u010dan na\u010din osigurava se kompatibilnost s NVIDIA bibliotekama, poput NVML, cuBLAS i cuSPARSE, \u2014 za takve biblioteke u ZLUDA su dostupne prevodila\u010dke biblioteke s istim nazivom i istim skupom funkcija, izra\u0111ene kao nadogradnje na sli\u010dne AMD biblioteke.     <\/p>\n<p>GPU k\u00f4d aplikacija, kompajliran u PTX (Parallel Thread Execution) predstavljenje, prvo se prevodi posebnim kompajlerom u intermedijarno predstavljanje LLVM IR, na temelju kojeg se generira binarni kod za GPU AMD.    <center><img decoding=\"async\" alt=\"Objavljen alat ZLUDA koji omogu\u0107ava pokretanje CUDA aplikacija na AMD GPU-ima\" src=\"\/wp-content\/uploads\/2024\/02\/607b77f27a07c7915211c49a4b405bd6.png\" style=\"display:block;margin: 0 auto;\" \/><\/center><br \/>\n<br \/>Izvor: <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.4 - 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\/hr\/blog\/news\/opublikovan-instrumentarij-zluda-pozvolyayushhij-zapuskat-cuda-prilozheniya-na-gpu-amd\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"hr_HR\" \/>\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\/hr\/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\udd47Objavljen je alat ZLUDA koji omogu\u0107ava pokretanje CUDA aplikacija na GPU AMD | ProHoster","description":"Projekt ZLUDA pripremio je otvorenu implementaciju CUDA tehnologije za GPU AMD, omogu\u0107uju\u0107i izvr\u0161avanje nemodificiranih CUDA aplikacija s performansama bliskim onima koje se izvr\u0161avaju bez promjena.","canonical_url":"https:\/\/prohoster.info\/hr\/blog\/news\/opublikovan-instrumentarij-zluda-pozvolyayushhij-zapuskat-cuda-prilozheniya-na-gpu-amd","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hr_HR","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\/hr\/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\/hr\/wp-json\/wp\/v2\/posts\/113552","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/comments?post=113552"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/posts\/113552\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media\/113553"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/media?parent=113552"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/categories?post=113552"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hr\/wp-json\/wp\/v2\/tags?post=113552"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}