New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
2018WP/HPC-08_Mixed_precision (diff) – NEMO

Changes between Initial Version and Version 1 of 2018WP/HPC-08_Mixed_precision


Ignore:
Timestamp:
2018-02-23T20:24:59+01:00 (6 years ago)
Author:
mcastril
Comment:

New page from template WorkPlanAction?

Legend:

Unmodified
Added
Removed
Modified
  • 2018WP/HPC-08_Mixed_precision

    v1 v1  
     1= HPC-08_BSC_Mixed_precision 
     2 
     3The PI is responsible to closely follow the progress of the action, and especially to contact NEMO project manager if the delay on preview (or review) are longer than the 2 weeks expected. 
     4 
     5== Help 
     6 
     7The action has to be detailed briefly in the 'Summary' for later inclusion in other pages. To do so, '''edit 'Summary' section as a common wiki page and set links for the development ticket and branch'''. 
     8 
     9'''Out of this, the rest of the page ('Abstract'|'Preview'|'Tests'|'Review') can be edited on-line inside the form fields''' considering the following color code given hereafter: [[span(PI(S), style=background-color:lightgrey)]], [[span(Previewer(s), style=background-color:lightblue)]] and [[span(Reviewer(s), style=background-color:lightgreen)]].\\ 
     10Record your modifications for the section you have edited by clicking on the corresponding button at the end of the section with 'Save ...' button. Just above, the log record will be updated. 
     11 
     12The informations inside the form fields and this wiki page itself are stored in 2 separate databases. As a consequence, there is absolutely no risk to make any modification in the page itself as long as you don't rename the page or modify the source code of `{{{#!TracForm ... }}}` processors. 
     13 
     14== Summary #summary 
     15 
     16||= '''Action'''       =|| HPC-08_BSC_Mixed_precision             || 
     17||= '''PI(S)'''        =|| Miguel Castrillo, Oriol Tintó                    || 
     18{{{#!th 
     19 
     20'''Digest''' 
     21 
     22}}} 
     23{{{#!td 
     24 
     25This is an action on the optimization of the NEMO model by using a mixed precision approach, containing two different sub-actions: 
     26 
     278.1: Study on the precision needed by the different processes in NEMO. 
     288.2: Implementation of this mixed precision approach on a NEMO version. 
     29 
     30}}} 
     31|- 
     32||= '''Dependencies''' =||                                                                    || 
     33||= '''Target'''       =||                                                                    || 
     34||= '''Trac Ticket'''  =|| #0000                                                              || 
     35||= '''SVN branch'''   =|| [source:/branches/$YEAR/dev_r{REV}_{SCOPE}-{NUM}_{PIS}-{KEYWORDS}] || 
     36||= '''Previewer(s)''' =||                                                                    || 
     37||= '''Reviewer(s)'''  =||                                                                    || 
     38||= '''Link'''         =|| [[ExtractUrl(.)]]                                                  || 
     39 
     40{{{#!comment 
     41 
     42DON'T REMOVE THIS VOID HEADING OR IT WILL BREAK THE INCLUDE FEATURE BETWEEN WIKI PAGES 
     43 
     44}}} 
     45==  == 
     46{{{#!comment 
     47 
     48DON'T REMOVE THIS VOID HEADING OR IT WILL BREAK THE INCLUDE FEATURE BETWEEN WIKI PAGES 
     49 
     50}}} 
     51 
     52{{{#!Fold title=Abstract tag=h2 
     53[=#abstract] 
     54 
     55This section should be completed before starting to develop the code, in order to find agreement on the method beforehand. 
     56 
     57{{{#!TracForm 
     58#!subcontext abstract 
     59#!submit_label 'Save Abstract' 
     60#!keep_history yes 
     61 
     62=== Description 
     63 
     64 [tf.textarea:description -id=piform -class=taform 'Describe the goal of development, and the methodology.\n\nAdd reference documents or publications if relevant.' 0 20] 
     65 
     66=== Implementation 
     67 
     68 [tf.textarea:implementation -id=piform -class=taform 'Describe flow chart of the changes in the code.\n\nList the .F90 files and modules to be changed.\n\nDetailed list of new variables (including namelists) to be defined. Give for each the chosen name (following coding rules) and definition.' 0 20] 
     69 
     70=== Reference manual and web pages updates 
     71 
     72 [tf.textarea:manual -id=piform -class=taform 'Using part 1 and 2, define the summary of changes to be done in the NEMO reference manual (tex files), and in the content of web pages.' 0 20] 
     73 
     74'''''Updated on [tf.form_updated_on:] by [tf.form_updater:]''''' 
     75 
     76}}} 
     77 
     78Once the PI has completed this section, he should send a mail to the previewer(s) asking them to preview the work within two weeks. 
     79 
     80}}} 
     81 
     82{{{#!Fold title=Preview tag=h2 
     83[=#preview] 
     84 
     85Since the preview step must be completed before the PI starts the coding, the previewer(s) answers are expected to be completed within the two weeks after the PI has sent his request. \\ 
     86For each question, an iterative process should take place between PI and previewer(s) in order to reach a "YES" answer for each of the following questions. 
     87 
     88{{{#!TracForm 
     89#!subcontext preview_ 
     90#!submit_label 'Save Preview' 
     91 
     92||= Questions =||= Answer =||= Comment =|| 
     93|| Does the previewer agree with the proposed methodology? || [tf.select:2.1 -id=preform '' Yes No NR] || [tf.textarea:2.1c -id=preform 'Add a comment?' 50 10] || 
     94|| Does the previewer agree with the proposed flowchart and list of routines to be changed? || [tf.select:2.2 -id=preform '' Yes No NR] || [tf.textarea:2.2c -id=preform 'Add a comment?' 50 10] || 
     95|| Does the previewer agree with the proposed new list of variables, including agreement with coding rules? || [tf.select:2.3 -id=preform '' Yes No NR] || [tf.textarea:2.3c -id=preform 'Add a comment?' 50 10] || 
     96|| Does the previewer agree with the proposed summary of updates in reference manual? || [tf.select:2.4 -id=preform '' Yes No NR] || [tf.textarea:2.4c -id=preform 'Add a comment?' 50 10] || 
     97|| ... ... ... || [tf.select:2.X -id=preform '' Yes No NR] || [tf.textarea:2.Xc -id=preform 'Add a comment?' 50 10] || 
     98 
     99'''''Updated on [tf.form_updated_on:] by [tf.form_updater:]''''' 
     100 
     101}}} 
     102 
     103Once all "YES" have been reached, the PI can start the development into his development branch. 
     104 
     105}}} 
     106 
     107{{{#!Fold title=Tests tag=h2 
     108[=#tests] 
     109 
     110Once the development is done, the PI should complete this section below and ask the reviewers to start their review in the lower section. 
     111 
     112{{{#!TracForm 
     113#!subcontext tests 
     114#!submit_label 'Save Tests' 
     115 
     116||= Questions =||= Answer =||= Comment =|| 
     117|| Can this change be shown to produce expected impact? (if option activated)? || [tf.select:3.1 -id=piform '' Yes No NR] || [tf.textarea:3.1c -id=piform 'Add a comment?' 50 10] || 
     118|| Can this change be shown to have a null impact? (if option not activated) || [tf.select:3.2 -id=piform '' Yes No NR] || [tf.textarea:3.2c -id=piform 'Add a comment?' 50 10] || 
     119|| Detailed results of restartability and reproducibility when the option is activated. Please indicate the configuration used for this test || [tf.select:3.3 -id=piform '' Yes No NR] || [tf.textarea:3.3c -id=piform 'Add a comment?' 50 10] || 
     120|| Detailed results of SETTE tests (restartability and reproducibility for each of the reference configuration) || [tf.select:3.4 -id=piform '' Yes No NR] || [tf.textarea:3.4c -id=piform 'Add a comment?' 50 10] || 
     121|| Results of the required bit comparability tests been run: Are there no differences when activating the development? || [tf.select:3.5 -id=piform '' Yes No NR] || [tf.textarea:3.5c -id=piform 'Add a comment?' 50 10] || 
     122|| If some differences appear, is reason for the change valid/understood? || [tf.select:3.6 -id=piform '' Yes No NR] || [tf.textarea:3.6c -id=piform 'Add a comment?' 50 10] || 
     123|| If some differences appear, is the !ticket describing in detail the impact this change will have on model configurations? || [tf.select:3.7 -id=piform '' Yes No NR] || [tf.textarea:3.7c -id=piform 'Add a comment?' 50 10] || 
     124|| Is this change expected to preserve all diagnostics? || [tf.select:3.8 -id=piform '' Yes No NR] || [tf.textarea:3.8c -id=piform 'Add a comment?' 50 10] || 
     125|| If no, is reason for the change valid/understood? || [tf.select:3.9 -id=piform '' Yes No NR] || [tf.textarea:3.9c -id=piform 'Add a comment?' 50 10] || 
     126|| Are there significant changes in run time/memory? || [tf.select:3.10 -id=piform '' Yes No NR] || [tf.textarea:3.10c -id=piform 'Add a comment?' 50 10] || 
     127|| ... ... ... || [tf.select:3.XX -id=piform '' Yes No NR] || [tf.textarea:3.XXc -id=piform 'Add a comment?' 50 10] || 
     128 
     129'''''Updated on [tf.form_updated_on:] by [tf.form_updater:]''''' 
     130 
     131}}} 
     132 
     133}}} 
     134 
     135{{{#!Fold title=Review tag=h2 
     136[=#review] 
     137 
     138A successful review is needed to schedule the merge of this development into the future NEMO release during next Merge Party (usually in November). 
     139 
     140{{{#!TracForm 
     141#!subcontext review 
     142#!submit_label 'Save Review' 
     143 
     144=== Code changes and documentation 
     145 
     146||= Question =||= Answer =||= Comment =|| 
     147|| Is the proposed methodology now implemented? || [tf.select:3.11 -id=revform '' Yes No NR] || [tf.textarea:3.11c -id=revform 'Add a comment?' 50 10] || 
     148|| Are the code changes in agreement with the flowchart defined at Preview step? || [tf.select:3.12 -id=revform '' Yes No NR] || [tf.textarea:3.12c -id=revform 'Add a comment?' 50 10] || 
     149|| Are the code changes in agreement with list of routines and variables as proposed at Preview step? \\If not, are the discrepancies acceptable? || [tf.select:3.13 -id=revform '' Yes No NR] || [tf.textarea:3.13c -id=revform 'Add a comment?' 50 10] || 
     150|| Is the in-line documentation accurate and sufficient? || [tf.select:3.14 -id=revform '' Yes No NR] || [tf.textarea:3.14c -id=revform 'Add a comment?' 50 10] || 
     151|| Do the code changes comply with NEMO coding standards? || [tf.select:3.15 -id=revform '' Yes No NR] || [tf.textarea:3.15c -id=revform 'Add a comment?' 50 10] || 
     152|| Is the !ticket of development documented with sufficient details for others to understand the impact of the change? || [tf.select:3.16 -id=revform '' Yes No NR] || [tf.textarea:3.16c -id=revform 'Add a comment?' 50 10] || 
     153|| Are the reference manual tex files now updated following the proposed summary in preview section? || [tf.select:3.17 -id=revform '' Yes No NR] || [tf.textarea:3.17c -id=revform 'Add a comment?' 50 10] || 
     154|| Is there a need for some documentation on the web pages (in addition to in-line and reference manual)? \\If yes, please describe and ask PI. A yes answer must include all documentation available. || [tf.select:3.18 -id=revform '' Yes No NR] || [tf.textarea:3.18c -id=revform 'Add a comment?' 50 10] || 
     155|| ... ... ... || [tf.select:3.XX -id=revform '' Yes No NR] || [tf.textarea:3.XXc -id=revform 'Add a comment?' 50 10] || 
     156 
     157==== Review Summary 
     158 
     159Is the review fully successful? [tf.select:status -id=revform '' Yes No] 
     160 
     161[tf.textarea:comment -id=revform 'If not, please indicate what is still missing.' 50 10] 
     162 
     163'''''Updated on [tf.form_updated_on:] by [tf.form_updater:]''''' 
     164 
     165}}} 
     166 
     167Once review is successful, the development must be scheduled for merge during next Merge Party Meeting. 
     168 
     169}}}