- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi , guys , I’m using oneapi mkl blas with dpcpp ,I met some problems , when i use eigen to compute gemm(col-major),i get right result ,but when i use mkl with dpcpp(col-major) ,i get wrong result ,i test the data translation ,this part is no problem,so i think the only reason is gemm function.I really hope somebody could help me fix it , I will appreciate it a lot.
the code is below:
this is eigen code which get right result.
this is mkl code , its input value is as same as eigen code,and please ignore the if statement, I use it to make sure pointer only init once when in loop , and i think it is no problem.
forgive me , I don’t get computer here ,so the picture is screenshot of ssh ,
I was plagued by this for a weeks , and I really want to use mkl , If you could help me , I will appreciate it a lot.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I want to update this question , mkl gemm with dpcpp can get right result when device is selected as cpu,however when device is set intel Xe hpg gpu ,the result is wrong .
the infomation of system:
I am sure that my code is right (because when I change gpu_selector to cpu_selector , the result is right), the problem is gemm or intel gpu , I still want to know how to fix it ,thanks!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
By the way , the compiler is Intel(R) oneAPI DPC++/C++ Compiler 2022.1.0 (2022.1.0.20220316)
the OS is Ubuntu20.04.4 LTS
oneapi version 2022.1.0
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
And the datatype is float ,data scale is m=100000,n=1024,k=25000
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Hansen,
Thanks for reaching out to us.
Could you please try running the sample code gemm_usm.cpp from MKL examples located under /opt/intel/oneapi/mkl/latest/examples/dpcpp/blas/source and see if you still get incorrect results on your GPU?
If possible please attach your test code here so that we can try reproducing the issue from our end as well.
Regards,
Vidya.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes , I think the reason is that the data is size to big , mkl::gemm can get right result when data is small , but if the data size is like my data , wrong result will be get.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Hansen,
Could you please let us know if working with oneMKL examples with your data also gives incorrect results?
Could you please try adding the sample reproducer here in the forum so that we can do a quick check and proceed further in this case?
Regards,
Vidya.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Hansen,
As we haven't heard back from you, could you please provide us with an update regarding the issue?
Regards,
Vidya.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Hansen,
As we haven't heard back from you, we are closing this thread. Please post a new question if you need any additional assistance from Intel as this thread will no longer be monitored.
Regards,
Vidya.

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