Changes between Version 5 and Version 6 of 2020WP/HPC-09_epico_Loop_fusion


Ignore:
Timestamp:
2020-01-07T18:33:21+01:00 (9 months ago)
Author:
epico
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • 2020WP/HPC-09_epico_Loop_fusion

    v5 v6  
    2222=== Description 
    2323 
    24 {{{#!comment width=25em help 
     24{{{#!box width=25em help 
    2525Describe the goal of development and the methodology, \\ 
    2626add reference documents or publications if relevant. 
    2727}}} 
    2828 
    29 ''The halo management support has been introduced to provide the developer with a tool for specifying different halo sizes for different NEMO Kernels. As an example, we cite the case of dynspg_ts routine where it could be convenient to enlarge the halo region (up to 5 lines or more) to reduce the communication steps in the time sub-stepping loop. In the advection kernels, like in the MUSCL schema, the use of a halo region 2 lines wide allows to remove the communication which currently happens between the slop calculation and the flux calculation; by means of a 2-lines halo, only an exchange is needed at the beginning of the routine and this, in turn, makes the code ready for further optimizations such as tiling ad loop fusion. 
    30 Moreover, the size of the halo region could be also tuned according to the size of the sub-domain; it is worth remembering that with a wider halo region the overall communication costs reduce but the computation costs grow.  
     29''...  
    3130'' 
    3231