Data Parallel C++



Download free course Data Parallel C++, pdf file on 565 pages by James Reinders, Ben Ashbaugh, James Brodman, Michael Kinsner, John Pennycook, Xinmin Tian.
Learn how to accelerate C++ programs using data parallelism. This open 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 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.

Table of contents

  • Introduction
  • Where Code Executes
  • Data Management
  • Expressing Parallelism
  • Error Handling
  • Unified Shared Memory
  • Buffers
  • Scheduling Kernels and Data Movement
  • Communication and Synchronization
  • Defining Kernels
  • Vectors
  • Device Information
  • Practical Tips
  • Common Parallel Patterns
  • Programming for GPUs
  • Programming for CPUs
  • Programming for FPGAs
  • Libraries
  • Memory Model and Atomics
  • Future Direction of DPC++
Pages : 565
Size : 15.8 MB
File type : PDF
Downloads: 67
Created: 2022-02-02
License: CC BY
Author(s): James Reinders, Ben Ashbaugh, James Brodman, Michael Kinsner, John Pennycook, Xinmin Tian
Data Parallel C++

Others c++ Tutorials

C++ Hacker's Guide

C++ Programming Language

The Boost C++ Libraries

Data Parallel C++

Learning C++

Others related eBooks about Data Parallel C++

Effective AWK Programming, 5th Edition

When processing text files, the awk language is ideal for handling data extraction, report..., download free AWK Programming tutorial in PDF (572 pages) created by ....

Think Java

Download free course Think Java, pdf file on 374 pages by Allen Downey, Chris Mayfield....

COBOL in 21 days

This tutorial present an easy way to learn COBOL in a few days,free training courses in PDF for beginners and intermediate level users....

Essential Go

This book written to provide clear and concise explanation of topics for programmers both starting to learn the Go programming language as well as those diving in more complex topics. Most examples are linked to online playground that allows you to change the code and re-run it....

C++ Notes for Professionals

Download free course C++ Notes for Professionals, pdf file on 707 pages by Stack Overflow Community....

C Programming Notes for Professionals

Download free course C Programming Notes for Professionals, pdf file on 341 pages by Stack Overflow Community....

JavaScript Notes for Professionals

Download free course JavaScript Notes for Professionals, pdf file on 489 pages by Stack Overflow Community....

A Programmer's guide to C# 5.0

Download a free Csharp training document in PDF .This pdf tutorial is for software developers who want to understand the basics of C# programming....

Introduction to Java programming

With this PDF tutorial you will be familiar with basic Java language syntax and able to write a simple Java programs and writing good Java code....

Cobol programmer's guide

Download a complet PDF tutorial about Cobol for programmers ,it shows you how to develop COBOL programs that use the database languages SQL and PL/SQL....