WW3 Developers Meeting: First steps to porting WAVEWATCH III to GPU #736
Replies: 4 comments 7 replies
-
@ukmo-ccbunney do you think porting to GPU for structured (or SMC) grids would also benefit from domain decomposition over the current card-deck approach? |
Beta Was this translation helpful? Give feedback.
-
Some questions from the developer call: Hendrik Tolman: Would be interesting to see if this will work as well with SNL3 Jessica Meixner: Two questions: It seems like CPU would also benefit from this by perhaps allowing compilers to use more for OMP threading or just for general optimization? Is it just conjecture that this will not speed things up for CPU or have you tested that it wouldn't? 2. Would having domain-decomposition instead of the card-deck help for GPU as well? Chris Bunney: Hendrick - yes. Something I intend to look into. It depends if the loops are independent or can be collapsed in the SNL3 routine. Chris Bunney: Jessica - yes. I had hoped that adding the seapoint loop in the source term routines might have allowed the compiler to do some clever stuff with optimizations, but so far I've not seen any evidence of that. However, you are right - it should allow for better OMP parallelisation for CPU cases. Jun Wang: May I ask what is the reason to choose OpenAcc over other GPU programming languages such as CUDA/OpenMP? Hendrik Tolman: Old approach in WAM on Cyber 205: Inner loop over space! Back to the future! Chris Bunney: Jun Wang - CUDA is a lot more low level and would likely need a lot more work to implement. OpenACC is a lot cleaner to implement and should be cross vendor compatible (CUDA is only nvidia?) Mike Bell: Chris: I believe OpenACC is Nvidia specific. We will want to support OpenMP directives as well as OpenACC ones |
Beta Was this translation helpful? Give feedback.
-
Hi all, We would like to community to discuss a couple of aspects from this work :
Any comments welcome! |
Beta Was this translation helpful? Give feedback.
-
Here are a couple of comments from my side:
|
Beta Was this translation helpful? Give feedback.
-
This thread is continue any discussion or Q&A on the following presentation from the recent WW3 Developers Meeting:
First steps to porting WAVEWATCH III to GPU
The original presentation can be downloaded here:
UK_MetOffice_GPU_Port_WW3_Dev_Meeting.pptx
Beta Was this translation helpful? Give feedback.
All reactions