Back to Search

Data Parallel C++: Mastering Dpc++ for Programming of Heterogeneous Systems Using C++ and Sycl

AUTHOR Ashbaugh, Ben; Reinders, James; Brodman, James
PUBLISHER Apress (11/03/2020)
PRODUCT TYPE Paperback (Paperback)

Description

Learn how to accelerate C++ programs using data parallelism. 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.

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 book begins by introducing data parallelism and foundational topics for effective use of the SYCL standard from the Khronos Group 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.
Data Parallel C++ provides you with everything needed to use SYCL for programming heterogeneous systems.

What You'll Learn

  • Accelerate C++ programs using data-parallel programming
  • Target multiple device types (e.g. CPU, GPU, FPGA)
  • Use SYCL and SYCL compilers
  • Connect with computing's heterogeneous future via Intel's oneAPI initiative

Who This Book Is For

Those new data-parallel programming and computer programmers interested in data-parallel programming using C++.


Show More
Product Format
Product Details
ISBN-13: 9781484255735
ISBN-10: 1484255739
Binding: Paperback or Softback (Trade Paperback (Us))
Content Language: English
More Product Details
Page Count: 548
Carton Quantity: 14
Product Dimensions: 6.14 x 1.17 x 9.21 inches
Weight: 1.75 pound(s)
Feature Codes: Illustrated
Country of Origin: NL
Subject Information
BISAC Categories
Computers | Languages - General
Computers | Hardware - General
Descriptions, Reviews, Etc.
jacket back

Use this book to learn how to accelerate C++ programs using data parallelism.

Data parallelism in C++ enables access to parallel resources in a modern heterogeneous system, freeing the programmer 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 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. SYCL programs perform best when paired with SYCL-aware C++ compilers such as the open source Data Parallel C++ (DPC++) compiler used in this book.

The material in this book is approachable to both those new to data-parallel programming and seasoned parallel programming veterans. It is full of practical advice, detailed explanations, and code examples to illustrate key topics.

This book begins by introducing data parallelism and foundational topics for effective use of SYCL and DPC++. Later chapters cover advanced topics including error handling, hardware-specific programming, communication and synchronization, and memory model considerations.

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.


You will:
  • 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
Show More
publisher marketing

Learn how to accelerate C++ programs using data parallelism. 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.

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 book begins by introducing data parallelism and foundational topics for effective use of the SYCL standard from the Khronos Group 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.
Data Parallel C++ provides you with everything needed to use SYCL for programming heterogeneous systems.

What You'll Learn

  • Accelerate C++ programs using data-parallel programming
  • Target multiple device types (e.g. CPU, GPU, FPGA)
  • Use SYCL and SYCL compilers
  • Connect with computing's heterogeneous future via Intel's oneAPI initiative

Who This Book Is For

Those new data-parallel programming and computer programmers interested in data-parallel programming using C++.


Show More
List Price $54.99
Your Price  $39.59
Paperback