Extending smart containers for data locality-aware skeleton programming: Extending smart containers for data locality-aware skeleton programming

CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE(2019)

引用 8|浏览12
暂无评分
摘要
We present an extension for the SkePU skeleton programming framework to improve the performance of sequences of transformations on smart containers. By using lazy evaluation, SkePU records skeleton invocations and dependencies as directed by smart container operands. When a partial result is required by a different part of the program, the run-time system will process the entire lineage of skeleton invocations; tiling is applied to keep chunks of container data in the working set for the whole sequence of transformations. The approach is inspired by big data frameworks operating on large clusters where good data locality is crucial. We also consider benefits other than data locality with the increased run-time information given by the lineage structures, such as backend selection for heterogeneous systems. Experimental evaluation of example applications shows potential for performance improvements due to better cache utilization, as long as the overhead of lineage construction and management is kept low.
更多
查看译文
关键词
lazy evaluation,loop tiling,skeleton programming,SkePU,smart containers
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要