LAMMPS WWW Site - LAMMPS Documentation - LAMMPS Commands

timer command

Syntax:

timer args 
  • args = one or more of off or loop or normal or full or sync or nosync
      off = do not collect or print any timing information
      loop = collect only the total time for the simulation loop
      normal = collect timer information broken down by sections (default)
      full = like normal but also include CPU and thread utilzation 
      sync = explicitly synchronize MPI tasks between sections
      nosync = do not synchronize MPI tasks between sections (default) 
    

    Examples:

    timer full sync
    timer loop 
    

    Description:

    Select the level of detail LAMMPS performs its CPU timings.

    During a simulation run LAMMPS collects information about how much time is spent in different sections of the code and thus can provide valuable information for determining performance and load imbalance problems. This can be done at different levels of detail and accuracy. For more information about the timing output, see this discussion of screen output.

    The off setting will turn all time measurements off. The loop setting will only measure the total time for a run and not collect any detailed per section information. With the normal setting, timing information for portions of the timestep (pairwise calculations, neighbor list construction, output, etc) are collected as well as information about load imbalances for those sections across procsessors. The full setting adds information about CPU utilization and thread utilization, when multi-threading is enabled.

    With the sync setting, all MPI tasks are synchronized at each timer call which meaures load imbalance more accuractly, though it can also slow down the simulation. Using the nosync setting (which is the default) turns off this synchronization.

    Multiple keywords can be specified. For keywords that are mutually exclusive, the last one specified takes effect.

    IMPORTANT NOTE: Using the full and sync options provides the most detailed and accurate timing information, but can also have a negative performance impact due to the overhead of the many required system calls. It is thus recommended to use these settings only when testing tests to identify performance bottlenecks. For calculations with few atoms or a very large number of processors, even the normal setting can have a measurable negative performance impact. In those cases you can just use the loop or off setting.

    Restrictions: none

    Related commands:

    run post no, kspace_modify fftbench

    Default:

    timer normal nosync