Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Try to port the project to ROCm #39

Closed
coversb opened this issue Dec 10, 2021 · 3 comments
Closed

Try to port the project to ROCm #39

coversb opened this issue Dec 10, 2021 · 3 comments

Comments

@coversb
Copy link

coversb commented Dec 10, 2021

Hi I am trying to port the project to the ROCm platform(AMD GPU), and found there is issue when compile the code by ROCm hipcc. HIPCC does not support compile c source file by c++ compiler. Maybe I have to modify many .c files to .cpp with gloabl functions, but will break the portability...

Do you have plan to support ROCm(https://rocmdocs.amd.com/en/latest/Programming_Guides/HIP-GUIDE.html) ?
Thanks!

@coversb coversb changed the title Try to prot the project to ROCm Try to port the project to ROCm Dec 21, 2021
@coversb
Copy link
Author

coversb commented Dec 21, 2021

Hello, now I almost finished the porting. But in ctest part, there are some FAILED items.
I saw the log, and I think it's issue about 'Single precision GPU test'. Do you have any suggestion to debug this?
Thanks!

[ RUN      ] auto_correlate.matrix_singleGPU_doubleGPU
/public/home/chenhao/workspace/oskar/oskar/oskar/correlate/test/Test_auto_correlate.cpp:27: Failure
Expected: (max_rel_error) < (tol), actual: 0.959102 vs 0.002
RELATIVE ERROR MIN: 0 MAX: 0.9591 AVG: 0.07807 STD: 0.19071
/public/home/chenhao/workspace/oskar/oskar/oskar/correlate/test/Test_auto_correlate.cpp:33: Failure
Expected: (avg_rel_error) < (tol), actual: 0.0780705 vs 1e-05
RELATIVE ERROR MIN: 0 MAX: 0.9591 AVG: 0.07807 STD: 0.19071
   > Matrix.
     Single precision GPU: 2.27 ms, Double precision GPU: 0.04 ms
[  FAILED  ] auto_correlate.matrix_singleGPU_doubleGPU (775 ms)

@coversb
Copy link
Author

coversb commented Dec 22, 2021

And in defien_auto_correlate.h, there are two functions defined OSKAR_ACORR_GPU and OSKAR_ACORR_CPU, I found in the code, it uses OSKAR_ACORR_CPU, does they all work fine ? Maybe just the speed to run is different?
Thanks~

@coversb
Copy link
Author

coversb commented Jan 10, 2022

Almost finished the ROCm porting, and pass all unit test, close it now.
image

@coversb coversb closed this as completed Jan 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant