PetscSF, the communication component of the Portable, Extensible Toolkit for Scientific Computation (PETSc), is being used to gradually replace the direct MPI calls in the PETSc library. PetscSF provides a simple application programming interface (API) for managing common communication patterns in scientific computations by using a star-forest graph representation. PetscSF supports several implementations whose selection is based on the characteristics of the application or the target architecture. An efficient and portable model for network and intra-node communication is essential for implementing large-scale applications. The Message Passing Interface, which has been the de facto standard for distributed memory systems, has developed into a large complex API that does not yet provide high performance on the emerging heterogeneous CPU-GPU-based exascale systems. In this paper, we discuss the design of PetscSF, how it can overcome some difficulties of working directly with MPI with GPUs, and we demonstrate its performance, scalability, and novel features.
翻译:PetscSF是Portable-Expensible Approducation(PETSc)的科学计算工具的通信部分,正在逐步用来取代PETSc图书馆直接的MPI电话;PetscSF提供简单的应用编程界面(API),通过使用恒星-森林图示代表来管理科学计算中共同的通信模式;PetscSF支持根据应用或目标结构的特征选择的若干执行项目;一个高效和便携式的网络和节内通信模式对于实施大规模应用至关重要。信息传递界面是分布式内存系统的实际标准,已经发展成一个大型复杂的API,尚未在新兴的混杂的CPU-GPU-GPU型离层系统中提供高性能。我们在本文件中讨论了PetscSF的设计,如何克服与MPI直接与GPUs合作的一些困难,我们展示了其性能、可扩展性和新特点。