MetOffice / MetOffice/lfric_core
NG-ARCH: Loop blocking for vertical layers
- Dominant language
- Fortran
- Stars
- 26
- Forks
- 73
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 4
Description
### Are there any linked Issues or Pull Requests?
Original trac ticket: ticket:4680
Linked apps issue: MetOffice/lfric_apps#136
PR:
### Brief description
In order to aid vectorisation, the vertical loops over k can be blocked with a tunable compile-time BLOCK_SIZE parameter. This is the the GitHub version of a previous Trac ticket [#4680](https://code.metoffice.gov.uk/trac/lfric/ticket/4680).
### Further details of the issue.
Further details in [#4680](https://code.metoffice.gov.uk/trac/lfric/ticket/4680).
This part of the issue covers blocking of `matrix_vector_kernel` and the definition of the `BLOCK_SIZE` parameter in `constants_mod`.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reading the linked Trac ticket #4680 and the linked lfric_apps issue #136 for the missing implementation details. Then locate matrix_vector_kernel and constants_mod in the LFRic core. Done means vertical k loops in matrix_vector_kernel support blocking controlled by a compile-time BLOCK_SIZE parameter defined in constants_mod.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- fortran
- Domain
- performance
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100