尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
ZLUDA 实战:把未修改的 CUDA 程序直接跑在 AMD GPU 上
ZLUDA 实战把未修改的 CUDA 程序直接跑在 AMD GPU 上【免费下载链接】ZLUDACUDA on non-NVIDIA GPUs项目地址: https://gitcode.com/GitHub_Trending/zl/ZLUDA用 CUDA 写好的程序只能在 N 卡上跑ZLUDA 就是来解决这件事的它是一个跨平台 CUDA 兼容的 GPU 兼容层顶替掉 CUDA 驱动库让没改过一行的 CUDA 程序在 AMD GPU 上以接近原生的性能运行。简单理解程序照旧调用libcuda.so以为自己在跟 NVIDIA 说话实际上指令被当场翻译成了 AMD GPU 听得懂的语言。整套东西是一个 Rust GPU 运行时想在非 NVIDIA 硬件上做 CUDA 迁移、又不想重写代码目前最省事的路线就是它。它到底能做什么一句话CUDA 驱动的 drop-in 替代品。应用不改代码、不改编译流程把系统里的驱动库换成 ZLUDA 提供的版本GPU 部分就切到了 AMD 硬件上执行。cuBLAS、cuDNN 这类常用性能库也有一并对应的替身重活不用你自己找替代算法。直接运行未修改的 CUDA 程序Linux / Windows 均可cuBLAS / cuDNN / FFT / 稀疏矩阵等性能库有对应实现自带 PTX 即时编译应用里打包的 GPU 代码现场编译官方文档给 llama.cpp、32 位 PhysX 等真实应用写了上手指南提醒一句实话项目还在快速迭代期不是所有应用都保证能跑通官方态度是先试、把结果报回来。支持哪些硬件和系统平台支持范围状态AMD GPURadeon RX 5000 系列及更新桌面 核显主力目标持续维护AMD 老卡Polaris、Vega 等不支持Intel GPU早期曾支持暂停可能重启操作系统Windows、LinuxmacOS 不支持AMD 侧走 HIPROCm 的移植层通道Windows 装最新 Adrenalin 驱动即可Linux 需要先把 HIP SDK 装上。Vulkan / OpenCL 通道目前只是备选移植方向官方明说了功能会缩水不少默认路径用不上它们。AMD GPU 上跑 CUDA 程序从零到跑通三步前置就两件事构建机要有 Git、CMake、Python 3、较新的 Rust 工具链和 C 编译器Linux 再加 HIP目标机上装好 GPU 最新驱动。git clone --recursive https://gitcode.com/GitHub_Trending/zl/ZLUDA cd ZLUDA cargo xtask --release构建时间不短终端安静几分钟属正常。产物在target/release里面的libcuda.soLinux或nvcuda.dllWindows就是被换进去的入口。不想自己编译的话官方也提供预编译包用法一致。跑一次验证# Linux LD_LIBRARY_PATH$PWD/target/release:$LD_LIBRARY_PATH ./my_cuda_app # Windows zluda.exe -- my_cuda_app.exeSteam 游戏更省事启动选项里直接填zluda.exe -- %command%第一次跑容易卡在哪启动慢、第一次内核调用卡住 → PTX 在现编先用zluda_precompile预热缓存Linux 构建报缺 HIP → 先装 HIP SDK 再来应用报找不到驱动 → 检查LD_LIBRARY_PATH或nvcuda.dll拷贝位置是否指向target/release32 位应用异常 → 要用 32 位版本别和 64 位混着放底层怎么翻译的简单理解三步走API 拦截 → PTX 解析 → 目标后端指令。拦截ZLUDA 提供替身libcuda.so/nvcuda.dll应用所有 Driver API 调用——分配显存、建上下文、启动内核——先落在这层。解析应用的 GPU 代码以 PTX 形式分发NVIDIA 的中间汇编可移植、人类可读ZLUDA 把它解析后走ptx/src/pass/里一系列规范化与重写通道。编译llvm_zluda/接手编译成目标 GPU 的可执行代码AMD 走 HIP 通道。所以它不是模拟器没有逐拍模拟那套就是正经编译管线。这也是接近原生性能说法的来源。跑起来之后怎么调预编译缓存降启动延迟zluda_precompile/能扫描指定目录或文件把里面的 GPU 代码全部抽出、编译、存进缓存应用第一次启动就直接命中zluda_precompile PATH它会吃满所有线程大应用基本立竿见影。内存操作尽量异步数据搬运重的场景多用 stream 的异步拷贝和异步启动少拿同步点卡 CPU转换层的收益才拿得满。benchmark 时关 trace运行时日志给每次 API 调用都记一笔测性能时别开着。哪些场景最香AI 推理 / 线性代数推理框架里矩阵乘、卷积全靠 cuBLAS 和 cuDNNZLUDA 有对应实现原来锁死在 N 卡上的模型服务现在 AMD 卡也能承接。官方专门写了 llama.cpp 的部署指南这是最常被拿来验证的落地场景。科学计算 / 仿真FFT 和稀疏矩阵运算都有独立通道建在 CUDA 上的科学软件分子动力学、流体求解之类改动最小就能迁移硬件选型不再被一家绑死。踩坑记录与排查思路实际跑起来坑基本集中在三类问题某条 PTX 指令报Unrecognized statement→根因该指令 PTX 编译器还没实现 →解法把对应.ptx和报错日志打包报给项目这正是他们补指令的主要来源。问题应用启动即崩、驱动初始化失败 →根因驱动太旧或 32 位 / 64 位版本混用 →解法升级到最新 AMD 驱动32 位应用换 32 位版本。问题能启动但结果不对定位不到 →根因某个具体 API 调用未支持或参数有差异 →解法开运行时日志看哪个调用先返回错误码。排查手段用zluda_trace/它是 CUDA API 的跟踪垫片记录每次调用的参数和返回码Windows 加--zluda-trace参数启动即可日志落在%TEMP%\zludaSteam 启动选项里同样能加接下来值得盯什么PyTorch / TensorFlow 支持是目前的头等优先级硬件侧则盯着 Intel 后端会不会重启。自己遇到跑不通的应用先开 trace 抓一份日志再提报——这对贡献者来说就是最有价值的参与方式。【免费下载链接】ZLUDACUDA on non-NVIDIA GPUs项目地址: https://gitcode.com/GitHub_Trending/zl/ZLUDA创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

`mise plugins uninstall` 完全指南:移除插件、保留工具版本与 `--purge` 深度清理

`mise plugins uninstall` 完全指南:移除插件、保留工具版本与 `--purge` 深度清理

mise plugins uninstall 完全指南:移除插件、保留工具版本与 --purge 深度清理 【免费下载链接】mise dev tools, env vars, task runner 项目地址: https://gitcode.com/GitHub_Trending/mi/mise mise plugins uninstall 是 mise 中用于移除已安装插件的命令…

📅 2026/9/11 8:33:05
容器镜像加速实战指南:5分钟跑通国内镜像拉取

容器镜像加速实战指南:5分钟跑通国内镜像拉取

容器镜像加速实战指南:5分钟跑通国内镜像拉取 【免费下载链接】public-image-mirror 很多镜像都在国外。比如 gcr 。国内下载很慢,需要加速。致力于提供连接全世界的稳定可靠安全的容器镜像服务。 项目地址: https://gitcode.com/GitHub_Trending/pu/p…

📅 2026/9/11 8:33:05
AI论文写作工具对比:千笔与SpeedAI实战评测

AI论文写作工具对比:千笔与SpeedAI实战评测

1. 项目背景与痛点分析本科阶段论文写作是每个学生必须经历的学术训练,但现实中存在几个普遍痛点:文献检索效率低、格式规范难以掌握、重复修改耗时耗力。根据2023年高校学术写作调研数据显示,82%的本科生在论文写作过程中经历过3次以上重大修…

📅 2026/9/11 8:33:04
MORE NEWS

更多资讯

📰

Claude Code 如何用 claude ultrareview 做非交互式 PR 审查?claude-howto 的 CI 门禁与 JSON 输出

Claude Code 如何用 claude ultrareview 做非交互式 PR 审查?claude-howto 的 CI 门禁与 JSON 输出 【免费下载链接】claude-howto A visual, example-driven guide to Claude Code — from basic concepts to advanced agents, with copy-paste templates that bri…

📰

CYW240128与ESP32+FPGA混合系统调试指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

RustFS 配置管理完全指南:环境变量体系、默认值与实战调优

RustFS 配置管理完全指南:环境变量体系、默认值与实战调优 【免费下载链接】rustfs 🚀2.3x faster than MinIO for 4KB object payloads. RustFS is an open-source, S3-compatible high-performance object storage system supporting migration and co…

📰

ML-KWS-for-MCU源码深度审计:嵌入式AI在Cortex-M上的内存、量化与编译链实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

开放生态之外:AI进业务系统的四个硬条件与Agent最后一公里

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

Cat-Catch 视频嗅探实操:网页视频下载与 M3U8 分片合并完整体验

Cat-Catch 视频嗅探实操:网页视频下载与 M3U8 分片合并完整体验 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch Cat-Catch 是一款开源的…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬