-
Notifications
You must be signed in to change notification settings - Fork 5
Update to PSyclone 3.2.x #101
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
Conversation
|
I had to update the version of Ubuntu used in the GHA runner and unfortunately it seems that more recent versions of gcc can't build the version of Kokkos that we have in the submodule. We get, e.g.: ../../../../../shared/kokkos/core/src/impl/Kokkos_MemoryPool.cpp:112:48: error: ‘uint32_t’ has not been declared
112 | void _print_memory_pool_state(std::ostream& s, uint32_t const* sb_state_ptr,
| ^~~~~~~~
../../../../../shared/kokkos/core/src/impl/Kokkos_MemoryPool.cpp:113:49: error: ‘uint32_t’ has not been declaredwhich the compiler helpfully says can possibly be fixed: ../../../../../shared/kokkos/core/src/impl/Kokkos_MemoryPool.cpp:49:1: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’However, we should probably update the kokkos submodule. I tried doing that but then the (generated?) Makefile files were missing from the |
|
Ready for review/assistance with Kokkos frm @sergisiso or @LonelyCat124 |
|
I've not made any attempt to improve the optimisations that the various scripts perform - I've just modernised them. |
|
One thing I noticed is that this repo is pinned to a very old version of Kokkos ( All the PSyclone scripts for NEMOLite2D worked correctly for me, and everything in tracer advection seemed ok. I didn't have openacc or opencl to test though. |
|
On new machine (with nvfortran 25.5) I get this warning: Edit: Also the taskset in Edit2: Another error when trying acc Edit3: References to Edit4: |
|
@arporter The makefile was deprecated in the recently released kokkos 5, I suggest we stick with kokkos tag 4.7.00 unless we want to change to cmake or use a preinstalled kokkos instead of embeding it. @LonelyCat124 I agree the nvfortran flags need updating, also we can get rid of the taskset, it was probably very specific to the last time we evaluated it. |
sergisiso
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@arporter I pushed a small commit that fixes the kokkos situation, see below other comments
benchmarks/nemo/nemolite2d/psykal/psyclone_scripts/acc_transform.py
Outdated
Show resolved
Hide resolved
benchmarks/nemo/tracer_advection/scripts/acc_kernels_explicit_data_movement_trans.py
Outdated
Show resolved
Hide resolved
|
Thanks both. I've updated the compiler flags and responded to Sergi's comments. Ready for another look now. |
sergisiso
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All comments have been addressed and all CI passes. Thanks for updating this @arporter.
|
I won't delete the branch just yet as @LonelyCat124 has referenced it a recent email to AMD and I don't want to cause any confusion, but we can delete this after some time. |
This update is needed so we can update performance results for The Paper.