通信模型服务于并行编程模型。与当前高性能计算机节点内(单一地址空间)和节点间(多地址空间)层次相对应,混合编程模型(Hybrid Programming Model)得到了广泛的关注,针对混合编程模型的通信模型和接口研究将是未来的主要研究方向之一。由于MPI适用于多地址空间之间的数据交换,因此当前的混合编程模型普遍为MPI+X,即将MPI用于节点间通信,节点内则采用适合于单地址空间的编程模型。
研究较多的混合编程模型有MPI+OpenMP(一种共享内存模型的编程接口)MPI+UPC(一种PGAS模型的编程接口)以及面向异构计算的MPI+CUDA/OPENCL(NVIDIA/ATI的GPGPU编程库)。然而面向E级系统,混合编程模型会面临更多的层次,例如MPI+UPC/OpenMP+ OPENCL/CUDA。
目前混合编程模型的研究仍集中在编程接口层次。随着编程接口的研究日趋成熟,面向E级系统中更加复杂的混合编程层次,开展混合编程模型的通信接口易用性编程研究将更为重要,并且还须在用户级通信库和NIC层次进行探索,为编程模型提供支持。
领取专属 10元无门槛券
私享最新 技术干货