{"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\/et\/blog\/news\/opublikovan-instrumentarij-zluda-pozvolyayushhij-zapuskat-cuda-prilozheniya-na-gpu-amd","title":{"rendered":"Avaldatud ZLUDA t\u00f6\u00f6riistakomplekt, mis v\u00f5imaldab CUDA rakenduste k\u00e4itamist AMD GPU-de peal","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>ZLUDA projekt on valmistanud avatud rakenduse CUDA tehnoloogiale AMD GPU-dele, v\u00f5imaldades k\u00e4ivitada muutmata CUDA rakendusi tootlikkusega, mis on l\u00e4hedane rakendustele, mis k\u00e4ivituvad ilma kihtideta. Avaldatud t\u00f6\u00f6riistakomplekt tagab binaarse \u00fchilduvuse olemasolevate CUDA rakendustega, mis on koostatud NVIDIA GPU-dele m\u00f5eldud CUDA kompilaatoriga. Rakendamine toimib AMD arendatava ROCm ja HIP (Heterogeneous-computing Interface for Portability) k\u00e4ituskihi peal. Projekti kood on kirjutatud Rust keeles ning seda levitatakse MIT ja Apache 2.0 litsentside alusel. Toetatakse t\u00f6\u00f6tamist Linuxis ja Windowsis.      <\/p>\n<p>CUDA t\u00f6\u00f6tlemise kihti AMD GPU-dega s\u00fcsteemides on arendatud viimased kaks aastat, kuid projektil on pikem ajalugu ja see loodi algselt CUDA toimimise tagamiseks Intel GPU-del. GPU toetamise poliitika muutmine seletub sellega, et projekti arendaja ZLUDA oli algselt Intel'i t\u00f6\u00f6taja, kuid 2021. aastal leidis ettev\u00f5te, et CUDA rakenduste k\u00e4ivitamine Intel GPU-del ei paku nende \u00e4rile huvi ja ei kiirendanud algatuse arendamist.     <\/p>\n<p>2022. aasta alguses lahkus arendaja Intel\u2019ist ja s\u00f5lmis lepingu AMD-ga CUDA \u00fchilduvuse kihi arendamiseks. AMD palus arenduse k\u00e4igus mitte avalikustada huvi projekti ZLUDA vastu ning mitte teha avalikke commit\u2019e ZLUDA repositooriumis. Kaks aastat hiljem leidis AMD, et CUDA rakenduste k\u00e4ivitamine AMD GPU-del ei paku nende \u00e4ri jaoks huvi, mis lepingutingimuste kohaselt v\u00f5imaldas arendajal oma t\u00f6id avalikustada. Kuna GPU tootjad on projekti rahastamise l\u00f5petanud, s\u00f5ltub selle saatus n\u00fc\u00fcd kogukonna huvidest ja teiste ettev\u00f5tete koost\u00f6\u00f6ettepanekutest. Ilma v\u00e4listoetusteta v\u00f5ib projekt areneda ainult suundades, mis huvitavad isiklikult autorit, n\u00e4iteks DLSS (Deep Learning Super Sampling).    <\/p>\n<p>Praeguses vormis hinnatakse rakenduse kvaliteedi taset alfa-versioonina. Sellegipoolest saab ZLUDA-d juba kasutada paljude CUDA rakenduste, sealhulgas Geekbench, 3DF Zephyr, Blender, Reality Capture, LAMMPS, NAMD, waifu2x, OpenFOAM ja Arnold k\u00e4itamiseks. Tagatud on minimaalne toetus primitiividele ja raamatukogudele cuDNN, cuBLAS, cuSPARSE, cuFFT, NCCL ja NVML.    <\/p>\n<p>CUDA rakenduste esimene k\u00e4ivitus ZLUDA juhtimisel toimub m\u00e4rkimisv\u00e4\u00e4rsete viivitustega, kuna ZLUDA kompileerib GPU koodi. J\u00e4rgmiste k\u00e4ivituste puhul selline viivitus puudub, kuna kompileeritud kood salvestatakse vahem\u00e4lu. Kompileeritud koodi t\u00e4itmise ajal on j\u00f5udlus l\u00e4hedane natiivsele. Geekbench paketi sooritamisel AMD Radeon 6800 XT GPU-l n\u00e4itas ZLUDA abil teostatud CUDA-testikomplekti variant oluliselt k\u00f5rgemat j\u00f5udlust kui OpenCL-p\u00f5hine variant.     <center><img decoding=\"async\" alt=\"Avaldatud ZLUDA t\u00f6\u00f6riistakomplekt, mis v\u00f5imaldab CUDA rakenduste k\u00e4itamist AMD GPU-de peal\" src=\"\/wp-content\/uploads\/2024\/02\/d851080f089fd00c9b35724eed3a3840.png\" style=\"display:block;margin: 0 auto;\" \/><\/center>    <\/p>\n<p>ZLUDA toetab ametlikku CUDA Driver API-d ja on \u00f5ppinud tagasi inseneritehnika abil osad dokumenteerimata CUDA API-st, rakendades funktsioonikutsed analoogsete funktsioonide vastu, mida pakuvad HIP runtime, mis sarnaneb CUDA-ga. N\u00e4iteks asendatakse funktsioon cuDeviceGetAttribute() funktsiooni hipDeviceGetAttribute(). Samamoodi tagatakse \u00fchilduvus NVIDIA raamatukogudega, nagu NVML, cuBLAS ja cuSPARSE, \u2014 ZLUDA-s pakutakse sarnastele raamatukogudele translatiivseid raamatukogusid sama nime ja sama funktsioonide kogumiga, mis on loodud sarnaste AMD raamatukogude peal.     <\/p>\n<p>Rakenduste GPU-kood, mis on kompileeritud PTX (Parallel Thread Execution) esituses, t\u00f5lgitakse alguses spetsiaalse kompilaatori poolt vahepealsesse LLVM IR esitusesse, mille p\u00f5hjal genereeritakse binaarkood AMD GPU jaoks.    <center><img decoding=\"async\" alt=\"Avaldatud ZLUDA t\u00f6\u00f6riistakomplekt, mis v\u00f5imaldab CUDA rakenduste k\u00e4itamist AMD GPU-de peal\" src=\"\/wp-content\/uploads\/2024\/02\/607b77f27a07c7915211c49a4b405bd6.png\" style=\"display:block;margin: 0 auto;\" \/><\/center><br \/>\n<br \/>Allikas: <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\/et\/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=\"et_EE\" \/>\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\/et\/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\udd47Avaldatud ZLUDA t\u00f6\u00f6riistakomplekt, mis v\u00f5imaldab k\u00e4ivitada CUDA rakendusi AMD GPU-l | ProHoster","description":"ZLUDA projekt on ette valmistanud avatud rakenduse CUDA tehnoloogia jaoks AMD GPU-dele, mis v\u00f5imaldab k\u00e4itada muutmata CUDA rakendusi, mille j\u00f5udlus on l\u00e4hedane rakendustele, mis t\u00f6\u00f6tavad ilma.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/news\/opublikovan-instrumentarij-zluda-pozvolyayushhij-zapuskat-cuda-prilozheniya-na-gpu-amd","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","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\/et\/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\/et\/wp-json\/wp\/v2\/posts\/113552","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=113552"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/113552\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/113553"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=113552"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=113552"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=113552"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}