POSIX(Pthreads) OpenMP MPI OpenCL DirectCompute CUDA Stream
MPI(MPI是一个标准,有不同的具体实现,比如MPICH等)是多主机联网协作进行并行计算的工具
OpenMP是针对单主机上多核/多CPU并行计算而设计的工具,换句话说,OpenMP更适合单台计算机共享内存结构上的并行计算。
MPI只是对循环进行并行化;任何生产者-消费者类情况不得不明确地用pthreads来处理。
OpenCL类似于OpenGL,是由整个业界共同制定的开放式标准,能够对硬件底层直接进行操作,相对来说比较灵活,也很强大,但开发难度较高;
DirectCompute类似于DirectX,是由微软主导的通用计算API,与Windows集成并偏向于消费领域,在易用性和兼容性方面做得更出色一些;
CUDA和Stream更像是图形架构或并行计算架构。