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*
715 Discussions

Can opeapi be combined with GPU for ray tracing?

wang__qiang
Beginner
1,521 Views


ray tracing need to consume amount of time,so i think whether the oneapi can be used to accelerate it.

0 Kudos
4 Replies
GouthamK_Intel
Moderator
1,521 Views

Hi Qiang,

Thanks for reaching out to us.

We are working on this and will get back to you.

 

Regards

Goutham

0 Kudos
Subarnarek_G_Intel
1,521 Views

Hi Qiang,

Can you give some more idea regarding the application you want to accelerate?

Regards,

Subarna

0 Kudos
Michael_C_Intel1
Moderator
1,521 Views

Hi QiangW,

Can you give more detail of you goal? Understanding your goal is needed to give appropriate guidance.

That being said, there are two OneAPI toolkits relevant for ray tracing in general.

1) The rendering toolkit

The rendering toolkit contains a suite of rendering related libraries. In particular, Embree and OSPRay provide both a ray tracing primitives API and a render engine respectively. They are available in the toolkit itself as well as open source repositories. Sources for Embree and OSPRay are available on GitHub.

The toolkit serves as a platform to get started and try applications... for best performance on hardware, many users redeploy the Embree or OSPRay implementation specifics within their own applications. Many also rebuild Embree and OSPRay specifically for their targets and feature sets, then use them as an off the shelf/self contained library.

2) The base toolkit

The base toolkit contains a compiler. Data Parallel C++… 'dpcpp' or 'DPC++'. Densely parallel or repeated operations can leverage command group handler functions like parallel_for (and it's functor/lamda) in search of acceleration on various device targets.

A developer could consider implementing a ray tracer with DPC++ offload regions. Performance will vary on the implementation and the device targets employed. However, currently (and fortunately), Intel has off the shelf ray tracing related implementations that aim to provide performance on Intel hardware.

3) Comment

For a user application its possible to mix and match a DPC++ application with the Rendering toolkit components. At this time, Embree or OSPRay API calls wouldn't reside in control group handler functors/lambdas... however, raw data out of such APIs could be passed to a DPC++ offload region for developer custom compute. The base toolkit is not a prerequisite for the rendering toolkit.


-MichaelC

 

 

0 Kudos
Subarnarek_G_Intel
1,521 Views

Hi Qiang,

I hope Michael's response has solved your query. Closing the ticket. Please feel free to reach out to us for further queries.

Regards,

Subarna

0 Kudos
Reply