AMD ROCM有没有明显的坑?
主要为了学习AI和做一些小的项目,春节期间把Windows平台迁到了Ubuntu。手上的显卡目前就一张7900xtx、Telsa P40、Intel A770。之前的方案是P40强开WDDM,使用WSL做一些项目。毕竟很多AI开源项目对linux兼容更好,特别是文件路径处理和字符编码编码处理这块。
考虑到性能最优,再加上我现在游戏只是附加项,所以能够达到和SD差不多的游戏兼容性也可以了,综上所以Ubuntu就是我重点考察的系统。
目前尝试了下Ubuntu,配合ROCM似乎在代码层面上和使用n卡并没有什么不同。测试了下bert以及各种变体配合pytorch进行句子嵌入,再进行向量数据库处理,至少这个场景下除了环境搭建不同外,其他并没有太大区别。而计算速度体感是比P40快不少了。而linux下的游戏表现,目前还算满意,2077这些都能跑,性能差距与windows还好,除了不能开光追。(是直接不能开,不是开了慢。不知道是不是proton有什么设置)
所以想请教下有经验的,linux下rocm是否还有什么大坑? 本帖最后由 psps3 于 2024-2-17 16:57 编辑
MI300X上市后,rocm更新了6.0,其他的我也不懂[困惑]
是直接不能开,不是开了慢。不知道是不是proton有什么设置
因为 dxvk 跑不了 dx12 啊..
你只用 torch 提供的东西理论上来说就没啥坑 哦。对了。。。我是学习AI和作一些基本的AI项目,比如NLP相关的。
不是专门跑应用,比如文生图之类的。 xy. 发表于 2024-2-17 16:54
因为 dxvk 跑不了 dx12 啊..
哦,原来是这个原因,不过也还好了 pytorch是目前支持最好的一批应用,也是amd的重点关照对象
没有关照到的地方到处都是坑[偷笑] xy. 发表于 2024-2-17 16:54
因为 dxvk 跑不了 dx12 啊..
那感觉还可以了,毕竟现在大多数pytorch。这样感觉如果只是做小型项目加学习,就没必要换4090了 我之前也是A卡用Ubuntu+ROCM6.0跑SD,还是换N卡吧,基本上不用折腾,直接附加驱动选装就好。
A卡配置环境那些折腾命令都不用敲。
换了张2080ti 22g跑SD比A卡强太多了,跑Topaz也比A卡快。
P40相当于1080Ti吧,性能还是有点不够的。 坑挺多了,之前玩AI绘图时用过,社区很多优化都是NVIDIA only的。
当玩具尝鲜可以,专门用就算了。 我用的a卡跑的故障检测,没遇到啥坑 安心cuda吧,时间成本也是钱,romc 本来也只是专业卡适配好些 79xtx跟p40这都差了多少年,感觉rocm不适合个人学习,反而适合跑比较热门且成熟的项目。 不是有个开源项目能让amd的显卡无需更改代码就能运行CUDA吗 个人学习应该还ok,基本就用pytorch 已经不用win了,偶尔给老妈股票机升级更新。
Ubuntu就是编译性能好,上网也不错,虚拟机的编译太离谱 目前看起来在PyTorch 下,ROCM和CUDA的使用方式完全一致,换言之基于torch的项目应该在AMD上可以不用修改直接运行。其实这样也就差不多了。
我的场景更多在于使用预训练模型做功能demo,特别是基于hugging face ,公司确定技术方案后再投入生产环境。所以我至少目前并不需要特别强的性能,大概率也不需要训练/微调模型。因此有一个能算得快点,对主流技术兼容还行的GPU就行了。至于真正的生产环境,那是公司该投入的东西。
同样,例如SD,我并不需要太考虑图生成的速度(当然也不要太离谱,CPU这种肯定还是不行)。而更多的是使用SD验证某种功能能否实现,如何实现。和很多专业作图或者做视频的需求还是不一样。
另外这个毕竟是个人设备,成本投入也是要考虑的。当然我很认同时间成本也是成本,也正因为如此我才直接换Linux 平台,毕竟很多开源项目在win下面直接运行并不好,很多都需要小改下。
用这几天至少跑torch还没遇到什么和cuda 不一样的地方。如果后面有需求到A卡不好满足,或者满足起来需要投入额外时间的需求,肯定我还是直接换CUDA了。 rocm 大部分被标记实验,说明成熟度不高,折腾可以,生产环境还是老老实实的用cuda 吧。 个人学习重点是学习,为什么要浪费时间精力去给AMD当测试员完善生态呢。 日常工作开发维护onnxruntime rocm,这里忠心建议你们不要用rocm,小问题太多(去年年初是大问题一堆,动不动segfault),哪怕是炼图,你都需要和整个开原生态做斗争。除非拿钱办事,否则不建议任何普通用户用a卡做这些事。加钱上n卡,你的时间更值钱,能用钱解决的都不是事,尤其还是小钱。 玩可以,真正要用,尤其是用到HIP本身的地方不建议。pytorch没啥问题。 xy. 发表于 2024-2-17 16:54
因为 dxvk 跑不了 dx12 啊..
vkd3d,虽然不知道光追支持得有多好
页:
[1]