Community
cancel
Showing results for 
Search instead for 
Did you mean: 
439 Views

Can I use (a subset of) oneAPI without DPC++?

Jump to solution

We are happy users of the DAAL library. Now there are some issues fixed in DAAL master, and they are already included in oneDAL 2021, but not in the DAAL 2020.x releases. Therefore if possible I'd like to use the oneDAL library as a drop-in replacement for DAAL. Is that possible? I do not want to switch compilers to DPC++, and I do not need FPGA or GPU support. Basically I want to use the DAAL subset of supported hardware, but with the newer oneDAL library. Will that work?

Tags (3)
0 Kudos
1 Solution
398 Views

I have just received a positive reply for this question from https://github.com/oneapi-src/oneDAL/issues/997#issuecomment-698943595

I quote from this topic:

DPC++ compiler is required for full compilation, but in case you are looking for CPU part - it's not required.
You can use 'daal' target in make for CPU only part for our previous version of interfaces.
Or you can use 'oneapi_c' target in make for our new C++ level APIs without DPC++ support - in both cases you don't need DCP++ compiler.

Answering your questions:

Yes, you can still use gcc/clang/MSVC compiler to build library with CPU support only.
Yes, for GPU support you will need DPC++ compiler.

 

View solution in original post

5 Replies
PrasanthD_intel
Moderator
425 Views

Hi Mario,


There is a dedicated forum for DAAL (https://community.intel.com/t5/Intel-oneAPI-Data-Analytics/bd-p/oneapi-data-analytics-library).

We are transferring this query to that forum.


Regards

Prasanth


AthiraM_Intel
Moderator
408 Views

Hi,


Thanks for reaching out to us.

Could you please give more details about the functionalities that you use with DAAL?

Also share the details about the issue fixes which you mentioned.


Thanks.


404 Views

Thanks Athira for the reply!

There are a number of nice improvements that I understand will be fixed regularly in oneDAL but only come with delay into DAAL. An example is https://github.com/oneapi-src/oneDAL/issues/353, where DAAL 2020.2 still shows thousands of compiler warnings when using the `-pedantic` compiler flag. This is fixed already in current oneDAL.

But to clarify, I can happily accept that oneDAL has more frequent releases than DAAL.

My question is whether I can use oneDAL as a drop-in replacement for DAAL without the need to switch compilers or integrate DPC++ (as long as I want CPU-only).

If possible I'd like an answer for the majority of classifiers, regressions and data normalization methods. We currently use quite many of these.

Thanks a lot for your consideration, and all the best, Mario

399 Views

I have just received a positive reply for this question from https://github.com/oneapi-src/oneDAL/issues/997#issuecomment-698943595

I quote from this topic:

DPC++ compiler is required for full compilation, but in case you are looking for CPU part - it's not required.
You can use 'daal' target in make for CPU only part for our previous version of interfaces.
Or you can use 'oneapi_c' target in make for our new C++ level APIs without DPC++ support - in both cases you don't need DCP++ compiler.

Answering your questions:

Yes, you can still use gcc/clang/MSVC compiler to build library with CPU support only.
Yes, for GPU support you will need DPC++ compiler.

 

View solution in original post

AthiraM_Intel
Moderator
371 Views

Hi,


Glad to know that you got the solution. We would discontinue monitoring this issue, please raise a new thread if you have further issues.


Thanks


Reply