目前几大开源的Stable Diffusion平台,更新速度都慢了,一个是没有太多新技术出现,新出的基础模型也都不完整开源了(API调用),能整的功能,也都整得差不多了。然后一群AMD死忠还在等着有一个能有一天小三上位;毕竟现在还被CUDA压得妥妥的。
目前在AMD在Stable Diffusion加速方法主要有四种:
a. 最常用的DirectML, 比较经典的方法,是Microsoft的DirectX 12的库之一,与Microsoft的DirectX架构概念一至,就是在驱动与应用层间加一层,用来避免不同硬件与应用之间的兼容性。实际性能跑下来,在directML方法下,只能发挥AMD显卡的1/3性能。
b. ONNX Runtime, ONNX的方法是,先用AMD架构优势,去算出一个AMD显卡的特有模型,然后对基进行标准封装,使用其它支持ONNX的平台也能用这个模型进行推理。速度是快的,但模型需要在当前的显卡上进行预生成,而且在使用上有很多限制,不如通用的基础模型方便。
c. ONNX Olive, 这是Microsoft也发现了DirectML的天生架构不能满足AMD在AI应用后,为AMD专门推出了基于ONNX的AMD优化版本。速度也是快的,缺点与ONNX Runtime一样。
d. 三个月前ZLUDA重出江湖。ZLUDA的作者,最初是与Intel合作的,在Intel显卡上做了一个接口,可以直接让Nvidia的CUDA应用调用Intel显卡资源,实际性况是效果不错,但Intel这么牛X的企业,怎么可能寄人篱下,本着做大做强的原则,Intel做了OpenV