AMD能不能完美运行pytorch?

您所在的位置:网站首页 最新款卡车 AMD能不能完美运行pytorch?

AMD能不能完美运行pytorch?

#AMD能不能完美运行pytorch?| 来源: 网络整理| 查看: 265

太长不看版: windows环境下无法通过pytorch使用A卡的gpu加速。

A卡跑DL的事情比较复杂,咱们一层一层来说这个事情。

gpu加速计算方面,AMD因为起步晚,前几年A家的cpu差点儿被I家干死,没有精力分神搞gpu,好不容易cpu这两年翻身了,回过头来N卡的cuda早已成为事实标准,这中间至少10年的差距,AMD再造一套标准已经不靠谱了,所以A家在DL方面的一个策略是抄袭cuda,实现api兼容,用这种方式把tensorflow/pytorch这些已经对cuda做过适配的DL框架整体搬到自家显卡上。

AMD的这个东西叫做ROCm - Radeon Open Compute Platform,Radeon锐龙就是A家显卡的品牌。

GitHub - RadeonOpenCompute/ROCm: ROCm - Open Source Platform for HPC and Ultrascale GPU ComputingWelcome to AMD ROCm™ Platform/

截至2021-12-14,ROCm发布的最新版本为4.5.2。预计2022年第一季度发布ROCm-5.0.0(这个是猜的,ROCm没有官方路线图,跳票非常厉害)。

那么ROCm的兼容性如何呢?

OS Kernel SLES15 SP3 5.3.18-24.49 RHEL 7.9 3.10.0-1160.6.1.el7 CentOS 7.9 3.10.0-1127 RHEL 8.4 4.18.0-193.1.1.el8 CentOS 8.3 4.18.0-193.el8 Ubuntu 18.04.5 5.4.0-71-generic Ubuntu 20.04.3HWE 5.8.0-48-generic

首先只支持linux(no windows, no macos),然后只支持有数的几个linux发行版(centos, ubuntu),最后对内核也有要求,ubuntu-20.04.4临近发布,据说要升级到kernel-5.13,社区已经报出amdpro无法安装,需要手工退回到kernel-5.11。

https://github.com/RadeonOpenCompute/ROCm/issues/1658

是不是安装了指定的linux发行版,再对应好指定的kernel就能跑pytorch的gpu加速了呢?还不行。

因为ROCm支持的gpu显卡极其有限,理论上只支持gfx900(vega56, vega64), gfx906(radeon vii), gfx908(m100)。

为啥说理论上?

据说之前的版本对gfx900也有bug,我没有对应的卡,没法测试,看官网报bug的情况,目前4.5.2应该把bug修复了通过自己hack源码,应该可以支持更多显卡型号,比如我自己只有gfx803(RX580),就一直通过打patch用到现在,不过是自己玩,不好说还有啥问题。从社区反馈看,4.5.2应该也能支持gfx1030(RX6800)了,但是官方说还有小问题,要2022年解决。

那么windows的希望在哪里?

OpenCL,这个东西是amd和apple之流搞的,搞了老长时间了,虽然没有干过cuda,但是至少能跑一些加速的代码,问题就是不能用tensorflow/pytorch这些DL框架。windows上我也没测试过。但是至少有个念想吧。微软有个项目,号称支持A卡加速,没实际玩过。 GitHub - microsoft/antares: Antares: an automatic engine for multi-platform kernel generation and optimization. Supporting CPU, CUDA, ROCm, DirectX12, GraphCore, SYCL for CPU/GPU, OpenCL for AMD/NVIDIA, Android CPU/GPU backends.ROCm去年提交了一些windows相关的代码,但是对A家的进度千万不可报有幻想。


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3