Ompsan: Static Verification Of Openmp'S Data Mapping Constructs

OPENMP: CONQUERING THE FULL HARDWARE SPECTRUM, IWOMP 2019(2019)

引用 6|浏览10
暂无评分
摘要
OpenMP offers directives for offloading computations from CPU hosts to accelerator devices such as GPUs. A key underlying challenge is in efficiently managing the movement of data across the host and the accelerator. User experiences have shown that memory management in OpenMP programs with offloading capabilities is non-trivial and error-prone.This paper presents OMPSan (OpenMP Sanitizer) - a static analysis-based tool that helps developers detect bugs from incorrect usage of the map clause, and also suggests potential fixes for the bugs. We have developed an LLVM based data flow analysis that validates if the def-use information of the array variables are respected by the mapping constructs in the OpenMP program. We evaluate OmpSan over some standard benchmarks and also show its effectiveness by detecting commonly reported bugs.
更多
查看译文
关键词
OpenMP offloading, OpenMP target data mapping, LLVM, Memory management, Static analysis, Verification, Debugging
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要