Skip to content

package for measuring cpu and wall clock execution time

License

Notifications You must be signed in to change notification settings

urbanjost/M_stopwatch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

string

M_stopwatch.f90 and associated files

Name

M_stopwatch - package for measuring cpu and wall clock execution time (LICENSE:PD) based on StopWatch

Description

M_StopWatch is a Fortran 90 module for measuring execution time of program segments. M_StopWatch is designed to be a portable, easy-to-use means of measuring execution time. It supports wall clock, CPU time, and a breakdown of the CPU clock into user and system times. It returns all times in seconds. It provides a simple means of determining which clocks are available, and the precision of those clocks.

M_StopWatch is used by instrumenting your code with subroutine calls that mimic the operation of a stop watch. The primary routines are start_watch, stop_watch, reset_watch, read_watch, and print_watch. M_StopWatch supports multiple watches, and provides the concept of watch groups to allow functions to operate on multiple watches simultaneously.

Download and Build with Make(1) gmake

Just download the github repository, enter the src/ directory and run make:

     git clone https://github.com/urbanjost/M_stopwatch.git
     cd M_stopwatch/src
     # change Makefile if not using one of the listed compilers

     # for gfortran
     make clean
     make F90=gfortran gfortran

     # for ifort
     make clean
     make F90=ifort ifort

     # for nvfortran
     make clean
     make F90=nvfortran nvfortran

     # optionally
     make test # run the unit tests
     make run  # run all the demo programs from the man-pages
     make help # see other developer options

This will compile the M_stopwatch(3f) module and optionally build all the example programs from the document pages in the example/ sub-directory and run the unit tests.

Download and Build with FPM(1) fpm

Alternatively, download the github repository and build it with fpm ( as described at Fortran Package Manager )

     git clone https://github.com/urbanjost/M_stopwatch.git
     cd M_stopwatch
     fpm build
     fpm test  # run unit tests

or just list it as a dependency in your fpm.toml project file.

     [dependencies]
     M_stopwatch        = { git = "https://github.com/urbanjost/M_stopwatch.git" ,tag="v1.0.1"}

Note that M_stopwatch.f90 is registered at the fpm(1) registry

Documentation docs

User

user guide.

Developer (experimental)

Demo Programsdemos

Each man-page includes a working example program. These and additional examples are included in the example/ directory.

About

package for measuring cpu and wall clock execution time

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages