Debugging CRCM5 : Différence entre versions

Un article de Informaticiens département des sciences de la Terre et l'atmosphère
Aller à: navigation, charcher
m
m
Ligne 21: Ligne 21:
 
Then kill the entry/model job (the job you want to debug) once it started.  
 
Then kill the entry/model job (the job you want to debug) once it started.  
 
   
 
   
Go into the execution directory:
+
Go into the execution directory:
 
   
 
   
&nbsp;&nbsp;&nbsp; '''cd '''<span class="moz-txt-slash" style="font-weight: bold;"><span class="moz-txt-tag">/</span>home/${USER}/MODEL_EXEC_RUN/${TRUE_HOST}<span class="moz-txt-tag">/</span></span><span style="font-weight: bold;">${UM_EXEC_exp}
+
&nbsp;&nbsp;&nbsp; '''cd '''<span class="moz-txt-slash" style="font-weight: bold;"><span class="moz-txt-tag">/</span>home/${USER}/MODEL_EXEC_RUN/${TRUE_HOST}<span class="moz-txt-tag">/</span></span><span style="font-weight: bold;">${UM_EXEC_exp}
 
     </span>
 
     </span>
 
   
 
   
 
   
 
   
3a) If you want to debug the entry execute:
+
3a) If you want to debug the entry execute:
 
   
 
   
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">.
+
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">.
      RUNENT_upload/configexp.cfg </span>
+
RUNENT_upload/configexp.cfg </span>
 
   
 
   
Go in the entry working directory:
+
Go in the entry working directory:
 
   
 
   
'''&nbsp;&nbsp;&nbsp; cd ''''''RUNENT/work'''
+
'''&nbsp;&nbsp;&nbsp; cd ''''''RUNENT/work'''
&nbsp;&nbsp;&nbsp;  
+
&nbsp;&nbsp;&nbsp;  
Execute the executable:
+
Execute the executable:
 
   
 
   
'''&nbsp;&nbsp;&nbsp; ''''''../bin/ATM_NTR.Abs'''
+
'''&nbsp;&nbsp;&nbsp; ''''''../bin/ATM_NTR.Abs'''
 
   
 
   
Or, if you want to use the debugger pgdbg:
+
Or, if you want to use the debugger pgdbg:
 +
 
 +
'''&nbsp;&nbsp;&nbsp; ''''''pgdbg -dbx ''''''../bin/ATM_NTR.Abs&nbsp; &amp;'''
 
   
 
   
'''&nbsp;&nbsp;&nbsp; ''''''pgdbg -dbx ''''''../bin/ATM_NTR.Abs&nbsp; &amp;'''
 
 
   
 
   
 +
3b) If you want to debug the model execute:
 
   
 
   
3b) If you want to debug the model execute:
+
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">.
 +
nbsp;&nbsp;&nbsp;      RUNMOD_upload/configexp.cfg </span>
 
   
 
   
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">.
+
Go in the entry working directory:
      RUNMOD_upload/configexp.cfg </span>
 
 
   
 
   
Go in the entry working directory:
+
'''&nbsp;&nbsp;&nbsp; cd ''''''RUNMOD/work'''
 +
&nbsp;&nbsp;&nbsp;
 +
Execute the executable:
 
   
 
   
'''&nbsp;&nbsp;&nbsp; cd ''''''RUNMOD/work'''
+
'''&nbsp;&nbsp;&nbsp; ''''''../bin/ATM_MOD.Abs'''
&nbsp;&nbsp;&nbsp;
 
Execute the executable:
 
 
   
 
   
'''&nbsp;&nbsp;&nbsp; ''''''../bin/ATM_MOD.Abs'''
+
Or, if you want to use the debugger pgdbg:
 
   
 
   
Or, if you want to use the debugger pgdbg:
+
'''&nbsp;&nbsp;&nbsp; ''''''pgdbg -dbx ''''''../bin/ATM_MOD.Abs&nbsp; &amp;'''
 
'''&nbsp;&nbsp;&nbsp; ''''''pgdbg -dbx ''''''../bin/ATM_MOD.Abs&nbsp; &amp;'''
 

Version depuis le 19 de mars 2015 à 13:54

1) The grid
If you have general problems right away in more than one point of your domain I would you a little test grid: Either global 24x12 points or, if you need to run LAM, use a grid 60x60 points.
I usually use these test grids:

    /home/winger/gem/v_3.3.3.1/Config/Test/24x12
    /home/winger/gem/v_3.3.3.1/Config/Test/LAM_60x60


2) Debugging mode?
Do you want to use a debugger?
If yes, I suggest you compile all routines you want to debug in debugging mode by adding "OPTIL=0 FCOMPF=-debug":

   make routine.o  OPTIL=0   FCOMPF=-debug

or, if you want to compile all your routines or modifyed a *.cdk

   make objloc  OPTIL=0

     FCOMPF=-debug 


Create the executables with    make gemclimdm_nompi  OPTIL=0

     DEBUG=-debug 

   make gemclimntr_nompi  OPTIL=0

     DEBUG=-debug 


3) Executing just the executable Does your entry/model crash? If not, the easiest way is to start the simulation the normal way with:

    Um_lance

Then kill the entry/model job (the job you want to debug) once it started.

Go into the execution directory:

    cd /home/${USER}/MODEL_EXEC_RUN/${TRUE_HOST}/${UM_EXEC_exp}

   


3a) If you want to debug the entry execute:

    . RUNENT_upload/configexp.cfg

Go in the entry working directory:

'    cd 'RUNENT/work     Execute the executable:

'    '../bin/ATM_NTR.Abs

Or, if you want to use the debugger pgdbg:

    'pgdbg -dbx '../bin/ATM_NTR.Abs  &


3b) If you want to debug the model execute:

    . nbsp;   RUNMOD_upload/configexp.cfg

Go in the entry working directory:

'    cd 'RUNMOD/work     Execute the executable:

'    '../bin/ATM_MOD.Abs

Or, if you want to use the debugger pgdbg:

    'pgdbg -dbx '../bin/ATM_MOD.Abs  &