CUDAは単なるソフトウェアではありません。GPUコンピューティングの共通言語です。
PyTorch、TensorFlow、JAXなど、主要なMLフレームワークはすべてCUDA向けに最適化されています。パフォーマンス層はプロプライエタリライブラリで実装されており、ニューラルネットワークにはcuDNN、線形代数にはcuBLAS、マルチGPU通信にはNCCLが使われています。開発者は「並列コンピューティングのやり方」を学ぶのではなく、CUDAのプリミティブな部分を学ぶのです。Nvidia以外のハードウェアへの移植は非常に困難です。
もし気に入ったら購読料お願いします