Pure Acetone<p>Анджей Яник (Andrzej Janik) представил обновление проекта ZLUDA, развивающего открытую реализацию технологии CUDA. Целью проекта является предоставление возможности запуска немодифицированных приложений CUDA на системах с GPU, отличных от GPU NVIDIA, с производительностью, близкой к производительности приложений, выполняемых без прослоек. Код проекта распространяется под лицензиями MIT и Apache 2.0.</p><p>ZLUDA 4 преподносится как первый выпуск, сформированный после чистки кодовой базы от кода, разработанного во время работы Анджея в компании AMD. С 2022 года Анджей работал в AMD над созданием слоя для совместимости GPU AMD с CUDA, но в 2024 году проект был свернут. В соответствии с условиями контракта и после получения разрешения на публикацию от представителя AMD, Анджей открыл код наработок, созданных во время работы в AMD и позволяющих выполнять CUDA-приложения поверх стека ROCm и runtime HIP (Heterogeneous-computing Interface for Portability). В октябре Анджей был вынужден убрать код из открытого доступа после письма от юристов, давших понять, что разрешение в ходе переписки по email не имеет юридической силы.</p><p>Новая редакция ZLUDA сформирована на основе кодовой базы, существовавшей до начала работы Анджея в AMD, не привязана к конкретным GPU и сосредоточена на выполнении приложений, использующих CUDA для ускорения задач, связанных с машинным обучением и искусственным интеллектом. Проект пока ограничивается работой на GPU AMD, но в дальнейшем будет адаптирован для GPU Intel. Выпуск ZLUDA 4 написан на языке Rust и ориентирован на выполнение тестового набора Geekbench 5.</p><p>Новая версия включает новый парсер для PTX, промежуточного языка, используемого в GPU NVIDIA. Выпуск также примечателен уходом от эмуляции специфичных для GPU NVIDIA инструкций инкремента и декремента по модулю, вместо которых теперь вызываются аналогичные инструкции GPU AMD. Указанные изменения позволили добиться повышения производительности при прохождении теста Geekbench примерно на 10%, по сравнению с OpenCL и веткой ZLUDA 3.</p><p>Хештеги:<br><a href="https://qoto.org/tags/ZLUDA" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ZLUDA</span></a> <a href="https://qoto.org/tags/CUDA" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CUDA</span></a> <a href="https://qoto.org/tags/OpenSource" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OpenSource</span></a> <a href="https://qoto.org/tags/AndrzejJanik" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AndrzejJanik</span></a> <a href="https://qoto.org/tags/GPU" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GPU</span></a> <a href="https://qoto.org/tags/MachineLearning" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>MachineLearning</span></a> <a href="https://qoto.org/tags/ArtificialIntelligence" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ArtificialIntelligence</span></a> <a href="https://qoto.org/tags/RustLanguage" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>RustLanguage</span></a> <a href="https://qoto.org/tags/AMD" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>AMD</span></a> <a href="https://qoto.org/tags/ROCm" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ROCm</span></a> <a href="https://qoto.org/tags/HIP" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HIP</span></a> <a href="https://qoto.org/tags/OpenCL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OpenCL</span></a> <a href="https://qoto.org/tags/Geekbench" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Geekbench</span></a> <a href="https://qoto.org/tags/TechUpdate" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>TechUpdate</span></a> <a href="https://qoto.org/tags/SoftwareDevelopment" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SoftwareDevelopment</span></a> <a href="https://qoto.org/tags/CrossPlatform" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CrossPlatform</span></a><br>Библиография:<br>**Яник, Анджей.** (2024). Обновление проекта ZLUDA. [Интернет-ресурс].<br>**CUDA и ROCm.** Heterogeneous-computing Interface for Portability: технологии и использование. Apache Software Foundation.<br>**Geekbench 5.** Кроссплатформенный тест производительности.<br>**Rust Language.** Программирование на Rust: особенности и преимущества.<br>**AMD GPU.** ROCm и его возможности. Технический обзор.<br>Если нужна дополнительная доработка, уточните, пожалуйста!</p><p>Проект поддерживает Windows и Linux, MacOS не поддерживается<br><a href="https://github.com/vosen/ZLUDA/" rel="nofollow noopener" target="_blank"><span class="invisible">https://</span><span class="">github.com/vosen/ZLUDA/</span><span class="invisible"></span></a></p><p><a href="https://pocketnet.app/lms_art?s=4e1db2f9a84ce3f28964e8676c2237187a219b5725547f1028133d906535ac24&ref=PDQmXtWJfd8f6fMtwaxzCuqvLpoN3KbS4o" rel="nofollow noopener" target="_blank"><span class="invisible">https://</span><span class="ellipsis">pocketnet.app/lms_art?s=4e1db2</span><span class="invisible">f9a84ce3f28964e8676c2237187a219b5725547f1028133d906535ac24&ref=PDQmXtWJfd8f6fMtwaxzCuqvLpoN3KbS4o</span></a></p>