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: 58
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

Data Parallel C++

Open Data Structures (in C++)

C++ Notes for Professionals

C++ programming tutorial for professionals

C++ Exercices with solutions

Others related eBooks about Data Parallel C++

Tutorial: Creating a Database Application using Delphi

Tutorial: Creating a Database This tutorial guides you through the creation of an InterBase database application with which you can view and update a sample employee database. You will use the Delphi IDE to create the database application. ...

3D Game Development with LWJGL 3

This book will introduce the main concepts required to write a 3D game using the LWJGL 3 l..., download free Game Development tutorial in PDF (371 pages) created by Antonio Hernández Bejarano ....

VB.NET programming

This document provides an introduction to VB.NET programming language. You will learn the basics of the language with screenshots and examples....

How to Build a SharePoint Website

Download free SharePoint tutorial in pdf, training document on 11 pages for beginners....

Web service with SOAP, PHP and WSDL

Download a PDF tutorial about the Web service and SOAP technology,free training document material on 7 pages by Monteiro....

100 Laravel Quick Tips

Download free course 100 Laravel Quick Tips, pdf file on 41 pages by Self-publishing3...

Think Perl 6

Want to learn how to program and think like a computer scientist? This practical guide get..., download free Perl 6 tutorial in PDF (466 pages) created by Laurent Rosenfeld ....

Spring Framework Tutorial

Download free Spring tutorial course in PDF, training file in 18 chapters and 68 pages. Free unaffiliated ebook created from Stack OverFlow contributor....

Automated Machine Learning

Download free course Automated Machine Learning, pdf file on 223 pages by by Frank Hutter, Lars Kotthoff, Joaquin Vanschoren....

Data Mining and Analysis: Fundamental Concepts and Algorithms

The fundamental algorithms in data mining and analysis form the basis for the emerging field of data science, which includes automated methods to analyze patterns and models for all kinds of data, with applications ranging from scientific discovery to business intelligence and analytics. ...