- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
We haven't heard back from you. Could you please provide an update on your issue?
Thanks & Regards,
Noorjahan.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page