stfc / PSycloneBench

Various benchmarks used to inform PSyclone optimisations
BSD 3-Clause "New" or "Revised" License
6 stars 5 forks source link

NemoLite2D PSyKAl supports PSyclone-generated MPI #60

Closed sergisiso closed 3 years ago

sergisiso commented 3 years ago

This PR cleans-up and fixes the issues of the PSyKAl distributed memory version generated by PSyclone.

The main issue are the missing GO_STENCIL metadata. Closes #59

It also fixes some issues with the PSyKAl makefile, which now generates and compiles the versions with a single make <target> command.

Finally, it also introduces some scripts under nemolite2d\scripts to perform problem size and scalability plots.

sergisiso commented 3 years ago

@arporter This is ready for review. It cleans and improves the psykal generation scripts to work as expected and match the performance of the manual implementations. (the only one not working yet for Gocean is OpenACC)

sergisiso commented 3 years ago

@arporter This is ready for the next review.

sergisiso commented 3 years ago

@arporter Ready for next review.

arporter commented 3 years ago

All good now with the minor exception that the manual and generated Fortran versions give the field checksums as zero. Unless this is something obvious I suggest creating a new Issue for that problem.

sergisiso commented 3 years ago

@arporter Since I am rewriting part of the PSyclone OpenCL generation to avoid known issues, I propose we continue with the merge of this PR and I will revisit how PSycloneBench is doing once the new code is being produced. Ready for next review.

arporter commented 3 years ago

A new issue has been created to capture the problem of the zero checksums. Everything else is good.