Paths to OpenMP in the kernel

Paths to OpenMP in the kernel
复制标题

内核中 OpenMP 的路径

DOI:
10.1145/3458817.3476183
复制
发表时间:
2021
期刊:
Storage and Analysis (SC '21
影响因子:
--
通讯作者:
Dinda, Peter
Dinda, Peter
中科院分区:
--
文献类型:
--
作者:
Ma, Jiacheng;Wang, Wenyi;Nelson, Aaron;Cuevas, Michael;Homerding, Brian;Liu, Conghao;Huang, Zhen;Campanoni, Simone;Hale, Kyle;Dinda, Peter

文献摘要

相似文献

OpenMP的实现对内核提出了越来越高的要求。我们将采取下一步措施,考虑将OpenMP引入内核。我们的愿景是,整个OpenMP应用程序、运行时系统和内核框架交织在一起,成为内核,允许OpenMP实现以定制的方式充分利用硬件。我们比较和对比了实现这一目标的三种方法。第一个是内核中的运行时(RTK),它将OpenMP运行时移植到内核,允许任何内核代码使用OpenMP编译指示。第二,内核中的进程(PIK)为在内核中运行用户级OpenMP代码添加了专门的进程抽象。第三种是内核的定制编译(CCK),它将OpenMP编译成一种无需任何中介即可利用内核框架的形式。我们描述了这些方法的设计和实现,并使用NAS和其他基准对它们进行了评估。
OpenMP implementations make increasing demands on the kernel. We take the next step and consider bringing OpenMPintothe kernel. Our vision is that the entire OpenMP application, run-time system, and a kernel framework is interwoven tobecomethe kernel, allowing the OpenMP implementation to take full advantage of the hardware in a custom manner. We compare and contrast three approaches to achieving this goal. The first,runtime in kernel(RTK), ports the OpenMP runtime to the kernel, allowing any kernel code to use OpenMP pragmas. The second,process in kernel(PIK) adds a specialized process abstraction for running user-level OpenMP code within the kernel. The third,custom compilation for kernel(CCK), compiles OpenMP into a form that leverages the kernel framework without any intermediaries. We describe the design and implementation of these approaches, and evaluate them using NAS and other benchmarks.