CUDA в настоящее время является технологией от одного поставщика от NVIDIA и, следовательно, не поддерживает мультивендорную поддержку, которую OpenCL делает.
Однако он более зрелый, чем OpenCL , имеет отличную документацию , и навыки, полученные с его помощью, будут легко перенесены в другой инструментарий параллельной обработки данных.
В качестве примера, прочитайте Параллельные алгоритмы данных Стила и Хиллиса, а затем посмотрите учебники Nvidia - есть четкая связь между двумя, но Стилом / Хиллисом статья была написана за 20 лет до введения CUDA.
Наконец, Проекты FCUDA работают над тем, чтобы позволить проектам CUDA предназначаться для аппаратного обеспечения не nvidia (FPGA).