Activities
- Continuing with port of WRF to CUDA
- Experimenting with the alternative solution of porting to regular C first.
- Experimenting with output verification script (for testing)
Accomplishments
- A rudimentary, partial port has been created, but we have not been able to test it.
Problems
- The GPU kernel templates at the NOAA site come with some testing scripts that compare the outputs of the variables on the the GPU and on the CPU. However, we have not gotten this to work. It seems to work fine and give good results. However, the problem is that it always gives good results. To test it, I used a stripped-down version of the WSM-5 module and compared the output to the full, CPU output, and the result from this program is the same. This leads me to believe there is a problem with the testing script.
Plans
- Figure out the problem with the testing script
- On Friday we converted the CUDA kernel to regular C. This required some effort due to the lack of automatically-generated variables that we had by virtue of using Michaelakes' scripts. However, it did reveal some bugs that had not revealed themselves in the CUDA implementation. Theoretically Michaelakes' script should make testing easier, but so far we have not been able to use it successfully. As a result, we are not sure which direction to go (i.e. whether to use regular C first or go straight to CUDA).
Keywords: cuda, fiu, uff, wrf