MetOffice / MetOffice/lfric_core

NG-ARCH: Loop blocking for vertical layers

Open
#219 0 comments 0 reactions 0 assignees View on GitHub
enhancement
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.