Profiling GEOS-Chem: Difference between revisions
Jump to navigation
Jump to search
Line 5: | Line 5: | ||
== Profiling GEOS-Chem with gprof == | == Profiling GEOS-Chem with gprof == | ||
[https://sourceware.org/binutils/docs/gprof/ The GNU profiler (<tt>gprof</tt>)] is a free, open source software package that you can use to determine which subroutines of GEOS-Chem are taking the most time. If your computer system has the GNU Compiler Collection already installed (as do most modern Unix/Linux clusters), then <tt>gprof</tt> should also be available for you to use. | |||
[[GEOS-Chem v11-01]] and higher versions have support for <tt>gprof</tt>. To profile GEOS-Chem, you must compile with the <tt>GPROF=y</tt> Makefile option, e.g.: | |||
make -j4 GPROF=y ...etc. other makefile options ... | |||
This will add the following compiler switches to the compilation sequence: | |||
{| border=1 cellspacing=0 cellpadding=5 | |||
|-valign="top" bgcolor="#CCCCCC" | |||
!width="250px"|Compiler | |||
!width="200px"|Switch to invoke <tt>gprof</tt> | |||
|-valign="top" | |||
|[[Intel Fortran Compiler|Intel Fortran compiler (<tt>ifort</tt>)]] | |||
|<tt>-p</tt> | |||
|-valign="top" | |||
|[[GNU Fortran compiler|GNU Fortran compiler (<tt>gfortran</tt>)]] | |||
|<tt>-pg</tt> | |||
|-valign="top" | |||
|[[PGI Fortran compiler|PGI Fortran compiler (<tt>pgfortran</tt>)]] | |||
|<tt>-pg</tt> | |||
|} | |||
== Profiling GEOS-Chem with TAU == | == Profiling GEOS-Chem with TAU == | ||
Information to be added | Information to be added |
Revision as of 17:35, 14 December 2016
File:Page is under construction.jpg
Overview
Profiling GEOS-Chem with gprof
The GNU profiler (gprof) is a free, open source software package that you can use to determine which subroutines of GEOS-Chem are taking the most time. If your computer system has the GNU Compiler Collection already installed (as do most modern Unix/Linux clusters), then gprof should also be available for you to use.
GEOS-Chem v11-01 and higher versions have support for gprof. To profile GEOS-Chem, you must compile with the GPROF=y Makefile option, e.g.:
make -j4 GPROF=y ...etc. other makefile options ...
This will add the following compiler switches to the compilation sequence:
Compiler | Switch to invoke gprof |
---|---|
Intel Fortran compiler (ifort) | -p |
GNU Fortran compiler (gfortran) | -pg |
PGI Fortran compiler (pgfortran) | -pg |
Profiling GEOS-Chem with TAU
Information to be added