当前位置: X-MOL 学术arXiv.cs.PF › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
A Newcomer In The PGAS World -- UPC++ vs UPC: A Comparative Study
arXiv - CS - Performance Pub Date : 2021-02-06 , DOI: arxiv-2102.03614
Jérémie Lagravière, Johannes Langguth, Martina Prugger, Phuong H. Ha, Xing Cai

A newcomer in the Partitioned Global Address Space (PGAS) 'world' has arrived in its version 1.0: Unified Parallel C++ (UPC++). UPC++ targets distributed data structures where communication is irregular or fine-grained. The key abstractions are global pointers, asynchronous programming via RPC, futures and promises. UPC++ API for moving non-contiguous data and handling memories with different optimal access methods resemble those used in modern C++. In this study we provide two kernels implemented in UPC++: a sparse-matrix vector multiplication (SpMV) as part of a Partial-Differential Equation solver, and an implementation of the Heat Equation on a 2D-domain. Code listings of these two kernels are available in the article in order to show the differences in programming style between UPC and UPC++. We provide a performance comparison between UPC and UPC++ using single-node, multi-node hardware and many-core hardware (Intel Xeon Phi Knight's Landing).

中文翻译:

PGAS世界中的新人-UPC ++与UPC:比较研究

分区全局地址空间(PGAS)“世界”中的一个新成员已经发布了其版本1.0:统一并行C ++(UPC ++)。UPC ++的目标是通讯不规则或细粒度的分布式数据结构。关键抽象是全局指针,通过RPC进行的异步编程,期货和承诺。UPC ++ API用于移动非连续数据并使用不同的最佳访问方法处理内存,与现代C ++中使用的API类似。在这项研究中,我们提供了两个用UPC ++实现的内核:作为偏微分方程求解器一部分的稀疏矩阵矢量乘法(SpMV),以及在2D域上实现热方程的实现。本文中提供了这两个内核的代码清单,以显示UPC和UPC ++在编程风格上的差异。
更新日期:2021-02-09
down
wechat
bug