000 02373 a2200289 4500
008 211218b |||||||| |||| 00| 0 eng d
020 _a9781484255735
082 _a004.35
_bREI
100 _aReinders, James
245 _aData parallel C++ : mastering DPC++ for programming of heterogeneous systems using C++ and SYCL
260 _bApress,
_c2021
_aNew York:
300 _axxvi, 547p. ;
_bpb,
_c23 cm.
365 _aEURO
_b49.99
504 _aIncludes index
520 _aLearn how to accelerate C++ programs using data parallelism. Data parallelism in C++ enables access to parallel resources in a modern heterogeneous system, freeing you from being locked into any particular computing device. Now a single C++ application can use any combination of devices--including GPUs, CPUs, FPGAs and AI ASICs--that are suitable to the problems at hand. This open access book enables C++ programmers to be at the forefront of this exciting and important new development that is helping to push computing to new levels. It is full of practical advice, detailed explanations, and code examples to illustrate key topics. This book teaches data-parallel programming using C++ and the SYCL standard from the Khronos Group and walks through everything needed to use SYCL for programming heterogeneous systems. The book begins by introducing data parallelism and foundational topics for effective use of SYCL and Data Parallel C++ (DPC++), the open source compiler used in this book. Later chapters cover advanced topics including error handling, hardware-specific programming, communication and synchronization, and memory model considerations. You will learn: " How to accelerate C++ programs using data-parallel programming " How to target multiple device types (e.g. CPU, GPU, FPGA) " How to use SYCL and SYCL compilers " How to connect with computing's heterogeneous future via Intel's oneAPI initiative
650 _aC++ (Computer program language)
650 _aOpenCL (Computer program language)
650 _aHeterogeneous computing
650 _aProgramming languages (Electronic computers)
650 _aComputer input-output equipment
700 _aAshbaugh, Ben
_eCo-author
700 _aBrodman, James
_eCo-author
700 _aKinsner, Michael
_eCo-author
700 _aPennycook, John
_eCo-author
700 _aTian, Xinmin
_eCo-author
942 _2ddc
_cTD
999 _c55899
_d55899