Skip to content
forked from ecmwf/kronos

Kronos provides tools for analysing profiling information, model and generating portable HPC workloads

License

Notifications You must be signed in to change notification settings

isabella232/kronos-1

 
 

Repository files navigation

Quick overview

1. Description

Kronos is a HPC workload simulator that generates a workload model starting from workload data collected on a real HPC system and then translates the workload model into a set of applications (+schedule) usable to benchmark HPC prototypes.

The software is mainly split into two components:

  • Kronos Modeller: ingests HPC workload data and generate a workload model (and schedule)
  • Kronos Executor: reads the workload model and deploys it on a real HPC system (through a set of portable "synthetic applications")

2. Licence

Please read the LICENCE file

3. Usage

The Kronos Modeller reads profiled workload data (.KProfile format) and generates a synthetic schedule (KSchedule format). The Kronos Executor reads a synthetic schedule (KSchedule format) and executes it on a HPC system.

4. Kronos File formats

The Kronos file formats are listed below. For each format an executable ("kronos-format-<format>) in the bin/ directory will provide a description of each field

  • Kronos Executor configuration format (for info: kronos-format-config-exe)
  • Kronos Profile Format ".KProfile" (for info: kronos-format-kprofile)
  • Kronos Schedule Format ".KSchedule" (for info: kronos-format-kschedule)
  • Kronos Results Format ".KResults" (for info: kronos-format-kresults)

5. Executor

The schedule file (KSchedule format) generated by the Kronos Modeller is passed on to Kronos Executor that translates the schedule into real applications to be run an a HPC system. Installation instructions of the executor are in :doc:`INSTALL.rst <INSTALL>`.

Running the executor

  • Load the executor conda environment (read :doc:`INSTALL.rst <INSTALL>` for a procedure to create it):

    source activate kronos_executor_env
    
  • Setup the executor configuration file

    A detailed description of the fields of the configuration file is shown by executing:

    kronos-format-config-exe -s
    
  • Run the executor:

    kronos-executor --config <executor-config-file> <path-to-kschedule-file>
    

Check results:

Performance parameters of the run can be retrieved as follows:

kronos-summarise-results <path-to-output-dir>

Collect results:

All the relevant output files can be collected in a tarball by executing:

kronos-collect-results <tarball> <path-to-output-dir>

About

Kronos provides tools for analysing profiling information, model and generating portable HPC workloads

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 68.3%
  • C 28.6%
  • Shell 1.8%
  • CMake 1.2%
  • C++ 0.1%