Intel® oneAPI DPC++/C++ Compiler
Talk to fellow users of Intel® oneAPI DPC++/C++ Compiler and companion tools like Intel® oneAPI DPC++ Library, Intel® DPC++ Compatibility Tool, and Intel® Distribution for GDB*
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.
808 Discussions

How oneAPI support parallel tasks on CPU?

Roin
Beginner
1,646 Views

The task (kernel) is in SPMD format.

As I know for some OpenCL implementation, they execute SPMD kernel on CPU (MPMD architecture) by wrapping a whole block/work-group into a function, and using thread-pool to ask CPU cores executes these functions.

For example, for the given kernel:

a[tid]=b[tid];

will be converted to

for(int tid = 0; tid<block_size;tid++)

    a[tid]=b[tid];

Does oneAPI do the same transformation?

Thanks

0 Kudos
3 Replies
NoorjahanSk_Intel
Moderator
1,601 Views

Hi,


Thanks for reaching out to us.


DPC++ includes SYCL, which is a higher-level abstraction layer that builds on OpenCL.


>>Does oneAPI do the same transformation?


Yes, OneAPI also follows the same transformation.

DPC++ follows the SPMD format while writing kernels.


Please refer to Data-Parallel C++ by James Reinders for more details.

 Pdf page no:124 or Textbook page no:99


Please refer to the below link to find DPC++ oneAPI sample that follows SPMD format.

https://github.com/oneapi-src/oneAPI-samples


Thanks & Regards,

Noorjahan


0 Kudos
NoorjahanSk_Intel
Moderator
1,572 Views

Hi,


We haven't heard back from you. Could you please provide an update on your issue?


Thanks & Regards,

Noorjahan.


0 Kudos
NoorjahanSk_Intel
Moderator
1,514 Views

Hi,

We have not heard back from you, so we will close this inquiry now. If you need further assistance, please post a new question.


Thanks & Regards,

Noorjahan.


0 Kudos
Reply