Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

Profiling for CESM

Hello, I am running CESM 1.2.2 and have been successful in building and running it on our cluster. I want to know if there is any formal way of fetching detailed timing data for each function of the components of CESM. As of now, we are relying on the data provided in the Timing folder - which seems to include driver details and associated timings. I am specifically looking for timing details of individual functions such as Long wave and short wave radiation routines, routines of vertical pressure velocity in advection (omcalc.f90).  Thanks in advance,
 

jedwards

CSEG and Liaisons
Staff member
Timer output can be found in the timing subdirectory of the case directiory.   Adding timers to focus on an area of interest is easy - simpleadd :  call t_startf("unique_timer_name')call t_stopf('unique_timer_name') The specific routine that you inidicate, omcalc.F90,  is in the semi-lagrangian transport code - this code is depreciated and may be removed for the next model version.   
 

eaton

CSEG and Liaisons
omcalc is used by both the Eulerian and SLD dycores.  I don't think it will be removed.
 
Hi,I did try this way of timing.However this doesnt seem to show any data in the final timings folder created.Also i noticed some of these functions which do show timing data have a barrier just before the t_stopf('xxxx').Should i add that to get the timing data.OR Is there more to be done to get function data timings.
 

jedwards

CSEG and Liaisons
Staff member
There are a number of namelist variables that can be modified to affect timing functionality:http://www.cesm.ucar.edu/models/cesm1.2/cesm/doc/modelnl/nl_drv.html 
 
This really isnt helping me.I would like to time the following functions.1)radiation(short and long wave in atm)2)advection in atmosphere3)all ocean function to check the once that run the longest.
 
hi I did try to change those option in the drv_in file and try.I would like more information about:1)profile_single_file2)run_barriers3)profile_depth_limit4)profile_detail_limit
 
Top