TRANSP runtime: timing plots and interpretation
Download the original Word guide (.docx)
User guide based on the supplied plotgen.i definitions. All variable names in this guide are output CDF plotting variables. Internal source-code variable names are intentionally omitted.
1. Timing plots available to users
Open the TRANSP output <runid>.CDF file and select the following variables or predefined multigraphs. Multigraphs are named plot collections, not additional CDF variables.
2. Overall CPU time and wall time
| CDF plotting variable | Units | What it measures |
|---|---|---|
CPTIM |
hours | Total CPU time used so far |
WALLTIME |
hours | Elapsed wall-clock time |
CPPTRANSP |
hours | PTRANSP timing (when applicable) |
PT_CPTIME |
hours | PT_SOLVER CPU time (when applicable) |
PT_WTIME |
hours | PT_SOLVER wall time (when applicable) |
Multigraph CPWALL displays CPTIM and WALLTIME. PT_TIME displays PT_CPTIME and PT_WTIME. CPDIS includes CPTIM and model CPU-time diagnostics.
Illustrative example: at the final output time, CPTIM = 12 hours and WALLTIME = 3 hours. This means 12 accumulated CPU-hours were reported during 3 elapsed hours. The ratio (4 CPU-hours per wall-hour) is not, by itself, an MPI speedup or a count of MPI ranks.
3. CPU time distribution by model (CPDIS)
| CDF plotting variable | Model/component |
|---|---|
CPTIM |
Total CPU time |
CPMCFI |
Monte Carlo fast-ion model (NUBEAM) |
CPFPP |
ICRF and Fokker–Planck model |
CPECH |
ECH model |
CPGEOM |
Flux-surface geometry |
CPXPGL |
xplasma loading |
CPSC0 |
Neutral transport |
CPOUT |
Output system |
CPTRK |
Straight-line tracker |
CPLH |
JET lower hybrid |
CPPTRANSP |
PTRANSP (when applicable) |
Illustrative example (not a measured TRANSP run): CPTIM = 10 h; CPMCFI = 5 h; CPFPP = 2 h; CPGEOM = 0.5 h; CPECH = 0.3 h; CPSC0 = 0.2 h; CPOUT = 0.4 h. These correspond to 50%, 20%, 5%, 3%, 2%, and 4% of CPTIM respectively. The selected values account for 84% of CPTIM, but the remainder should not be labeled a single model without checking other timing categories and overlap.
At a selected time t: model share (%) = 100 × model timing(t) / CPTIM(t). For an interval [t1,t2], use 100 × [model timing(t2) − model timing(t1)] / [CPTIM(t2) − CPTIM(t1)], provided the counters are cumulative and comparable.
4. Detailed model timing plots
BMCPU — fast-ion/NUBEAM CPU breakdown
| CDF plotting variable | Description |
|---|---|
CPMCFI |
Total fast-ion code |
CPBDEP |
Fast-ion deposition |
CPBMCINI |
Monte Carlo table setup |
CPXPGL |
xplasma load |
CPBORB |
Fast-ion orbit following and collisions |
CPBOUT |
Fast-ion output renormalization |
BMPLL — NUBEAM parallel timing
| CDF plotting variable | Description |
|---|---|
CPBMAX |
Maximum thread CPU time |
CPBMIN |
Minimum thread CPU time |
CPBROOT |
Root thread CPU time |
WC_NUBEAM |
NUBEAM wall-clock time |
CPGEO — geometry and equilibrium
| CDF plotting variable | Description |
|---|---|
CPGEOM |
Flux-surface geometry |
CPMHDQ |
MHD equilibrium |
CPGEOCAL |
Flux-surface averages |
CPICH — ICRF and Fokker–Planck
| CDF plotting variable | Description |
|---|---|
CPFPP |
Overall ICRF/FP timing |
CPWAVE |
ICRF wave calculation |
CPFP_SOLV |
Fokker–Planck solver |
CPFP_COEF |
Coefficient setup |
CPFP_QLO |
Quasilinear operator |
CPFP_RAD |
Radial transport loop |
CPFP_OUT |
Final output |
5. How to interpret the plots
Start with CPWALL: compare total accumulated CPU time (CPTIM) with elapsed wall time (WALLTIME).
Use CPDIS to rank model costs. For a given output time, divide each model timing value by CPTIM to estimate its share.
Use BMCPU to investigate which parts of NUBEAM dominate. Do not add CPMCFI to its own subcomponent timings.
Use BMPLL to compare NUBEAM thread timing and wall time; these are different measures and should not be stacked as independent CPU costs.
Use CPICH to determine whether wave calculations, the Fokker–Planck solver, or other ICRF/FP stages dominate. Do not add CPFPP to its own subcomponents.
Use time differences between consecutive output points to identify intervals with unusually high computational cost.
Some variables may be absent if the corresponding physics model or feature was not enabled for the run.
6. Important cautions
Timing values are reported in hours. CPU and wall-clock measures have different meanings. Model totals and subcomponent values may overlap, and the provided plot definitions do not establish that every category is mutually exclusive. Only use percentages as an accounting breakdown after checking counter scope and overlap.
This guide describes available plotting variables; the uploaded plotgen.i does not include timing measurements for a specific run.