Towards Heterogeneous and Distributed Computing in C++

Proceedings of the International Workshop on OpenCL(2019)

引用 1|浏览16
暂无评分
摘要
Current semiconductor trends have shown a significant s h ift in computer system architectures towards distributed and heterogeneous systems that combine multiple different processors such as CPUs, GPUs, and FPGAs that all work together, performing many different kinds of tasks in parallel. Recent trends show C++ to be a particularly popular programming language for heterogeneous and distributed systems due to its ability to both provide user-friendly high-level abstractions but also the ability to generate highly optimised code. However heterogeneous and distributed computing is not yet a first-class citizen of the C++ language or the STL. In the recent C++ standards; C++11/14/17, many new features have been introduced which provide much more control over parallelism and concurrency including parallel implementations of many of the standard algorithms, which now have several implementations including one which targets a range of heterogeneous platforms via SYCL. However, as this is all still based on the standard C++ machine model, which is strictly CPU focused, C++ continues to hold many limitations over the ability to execute work on accelerators due to the difference in memory and execution models. This paper will provide an overview of the recent efforts to introduce heterogeneous and distributed computing to the ISO C++ standard. It is an up-to-date status for 2019 and supersedes our previous DHPCC++ paper.
更多
查看译文
关键词
C++, concurrency, distributed programming models, executors, heterogeneous programming, parallelism
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要