技术栈架构
**1. 系统软件层
- 英伟达:基于CUDA驱动,支持英伟达GPU的底层硬件加速。
- AMD:基于ROCm驱动,支持AMD GPU的底层硬件加速。
**2. 运行时环境层
- 英伟达:ONNX Runtime with CUDA,支持使用CUDA进行硬件加速。
- AMD:ONNX Runtime with ROCm,支持使用ROCm进行硬件加速。
**3. 编程模型和语言层
- 英伟达:通过TensorFlow、PyTorch等框架导出ONNX模型,使用CUDA后端优化编译。
- AMD:通过相同框架导出ONNX模型,但使用ROCm后端优化编译。
**4. 计算库层
- 英伟达:使用cuDNN、TensorRT等计算库来加速ONNX模型的执行。
- AMD:使用MIOpen、rocBLAS等计算库来加速ONNX模型的执行。
**5. 框架层
- ONNX本身在框架层无差异,支持的框架(如PyTorch、TensorFlow)可以跨平台导出和执行ONNX模型。