Skip To Main Content
Intel logo - Return to the home page
My Tools

Select Your Language

  • Bahasa Indonesia
  • Deutsch
  • English
  • Español
  • Français
  • Português
  • Tiếng Việt
  • ไทย
  • 한국어
  • 日本語
  • 简体中文
  • 繁體中文
Sign In to access restricted content

Using Intel.com Search

You can easily search the entire Intel.com site in several ways.

  • Brand Name: Core i9
  • Document Number: 123456
  • Code Name: Emerald Rapids
  • Special Operators: “Ice Lake”, Ice AND Lake, Ice OR Lake, Ice*

Quick Links

You can also try the quick links below to see results for most popular searches.

  • Product Information
  • Support
  • Drivers & Software

Recent Searches

Sign In to access restricted content

Advanced Search

Only search in

Sign in to access restricted content.

The browser version you are using is not recommended for this site.
Please consider upgrading to the latest version of your browser by clicking one of the following links.

  • Safari
  • Chrome
  • Edge
  • Firefox

DPC++ Part 2: Programming Best Practices

@IntelDevTools


Subscribe Now

Stay in the know on all things CODE. Updates are delivered to your inbox.

Sign Up

Overview

In Part two of the Data Parallel C++ (DPC++) overview series, software engineer Anoop Madhusoodhanan Prabha discusses the best practices for using this language to program oneAPI applications.

DPC++ is part of the oneAPI initiative and provides an open, cross-industry alternative to single-architecture, proprietary languages. Based on familiar C++ and incorporating SYCL* from The Khronos Group*, DPC++ lets developers more easily port code across various architectures from an existing application’s code base.

With that capability comes unique considerations such as how data should be made available on the device side, and the need for synchronization points between compute kernels running across a host and devices to ensure accurate results and deterministic behavior.

Take the next step in learning DPC++ by joining Anoop as he explains:

  • How to efficiently use buffers, sub-buffers, and unified shared memory
  • The in-depth implicit synchronization points in DPC++
  • The atomics, mutex, work-group barriers, and work-group mem-fence

Other Resources

  • Download the Presentation
  • Additional DPC++ Best Practices PDF
  • Download the first four chapters of a new DPC++ book, written by an expert author team
  • Learn more about the oneAPI Initiative
  • Explore this initiative led by Intel, including the download of free software toolkits like the essential Intel® oneAPI Base Toolkit, which includes the DPC++ compiler and libraries. Learn More
  • Sign up for an Intel® Developer Cloud account—a free development sandbox with access to the latest Intel® hardware and oneAPI software. No downloads. No configuration steps. No installations.
     

Anoop Madhusoodhanan Prabha
Software engineer, Intel Corporation

With over 10 years of experience as a software engineer, Anoop’s work has included application development, system analysis and design, database administration, data migrations, automations, function point analysis, and critical projects in the telecommunications domain. Since joining Intel in 2009, he has worked on optimizing various customer applications by enabling multithreading, vectorization, and other microarchitectural tunings. He has experience working with OpenMP*, Threading Building Blocks (TBB), CUDA*, and more. Today, Anoop focuses on floating-point reproducibility across various Intel® architectures, containerized solutions for Intel® compiler-based workloads, and continuous integration and continuous deployment adoption.

Anoop holds a master of science in electrical engineering from State University of New York College at Buffalo with an emphasis in high-performance computing, and a bachelor of technology in electronics and communication engineering from Malaviya National Institute of Technology in Jaipur.

Jump to:

You May Also Like
 

Intel® oneAPI Base Toolkit

Develop high-performance, data-centric applications for CPUs, GPUs, and FPGAs with this core set of tools, libraries, and frameworks including LLVM*-based compilers.

 

Get It Now

 

See All Tools

 

   

You May Also Like

Related Videos

DPC++ Part 1: An Introduction to the New Programming Models

Data Parallel C++: An Open Alternative for Cross-Architecture Development

oneAPI: The Path to Streamlined Cross-Architecture Development

Overview of oneAPI DPC++ Programming

  • Company Overview
  • Contact Intel
  • Newsroom
  • Investors
  • Careers
  • Corporate Responsibility
  • Inclusion
  • Public Policy
  • © Intel Corporation
  • Terms of Use
  • *Trademarks
  • Cookies
  • Privacy
  • Supply Chain Transparency
  • Site Map
  • Recycling
  • Your Privacy Choices California Consumer Privacy Act (CCPA) Opt-Out Icon
  • Notice at Collection

Intel technologies may require enabled hardware, software or service activation. // No product or component can be absolutely secure. // Your costs and results may vary. // Performance varies by use, configuration, and other factors. Learn more at intel.com/performanceindex. // See our complete legal Notices and Disclaimers. // Intel is committed to respecting human rights and avoiding causing or contributing to adverse impacts on human rights. See Intel’s Global Human Rights Principles. Intel’s products and software are intended only to be used in applications that do not cause or contribute to adverse impacts on human rights.

Intel Footer Logo