Variorum¶
Variorum is an extensible, vendor-neutral library for exposing power and performance capabilities of low-level hardware dials across diverse architectures in a user-friendly manner. It is part of the ECP Argo Project, and is a key component for node-level power management in the HPC PowerStack Initiative. Variorum provides vendor-neutral APIs such that the user can query or control hardware dials without needing to know the underlying vendor’s implementation (for example, model-specific registers or sensor interfaces). These APIs enable application developers to gain a better understanding of power, energy, and performance through various metrics. Additionally, the APIs may enable system software to control hardware dials to optimize for a particular goal. Variorum focuses on ease of use and reduced integration burden in applications, which it accomplishes by providing:
Examples which demonstrate how to use Variorum in a stand-alone program.
A performance analysis sampler that runs alongside the application.
A JSON API to allow integration with higher-level system software, such as job schedulers, distributed monitoring frameworks, or application-level runtime systems.
Variorum Project Resources¶
Online Documentation https://variorum.readthedocs.io/
Github Source Repo http://github.com/llnl/variorum
Issue Tracker http://github.com/llnl/variorum/issues
Lead Developers¶
Stephanie Brink (LLNL)
Aniruddha Marathe (LLNL)
Tapasya Patki (LLNL)
Barry Rountree (LLNL)
Kathleen Shoga (LLNL)
Code Of Conduct¶
Acknowledgments¶
This research was supported by the Exascale Computing Project (17-SC-20-SC), a joint project of the U.S. Department of Energy’s Office of Science and National Nuclear Security Administration, responsible for delivering a capable exascale ecosystem, including software, applications, and hardware technology, to support the nation’s exascale computing imperative.
Variorum Documentation¶
Basics
Usage
API Docs
Contributing
Reference