-
Notifications
You must be signed in to change notification settings - Fork 2
Home
The microbenchmark effort pushes to obtain techniques to create, launch, and understand microbenchmark programs. A benchmark program is an executable file tested with varying targeted environmental elements such as different architectures or compilation options. The user then knows the expected results, predicted execution time, and behavior. The benchmark program provides other users a stable base with which to compare themselves.
The original focus of the microbenchmarking effort was to understand and predict performance in various synthetic programs. However, it quickly broadened to encompass energy issues, including understanding energy consumption of the generated microbenchmark programs. The study of energy consumption by the synthetic programs is always in conjunction with how real programs behave on a given architecture. Users can predict and detect anomalies allowing for post-optimization. Consequently, there is always a link or a goal to create realistic synthetic benchmarks.
Currently, there are three microbenchmark related tools: MicroCreator, MicroLauncher, and Microdetector. Each tool has its own entry point explaining in greater detail the tool, its purpose, and how to install it, including user and developer manuals.
MicroCreator is a C++ tool to generate microbenchmark programs for performance evaluation and analysis. The tool uses as input an XML file and outputs either assembly or C code.
MicroLauncher is a C tool which handles launching programs; it supports microbenchmarks generated by MicroCreator and stand-alone executables.
MicroDetector is a C tool allowing the other two tools to abstract information about the underlying architecture. The information contains the registers used during function calls, the names of the vectorial registers, etc.
Jean Christophe Beyler, Intel France, Exascale Computing Research
MicroPerf is a set of tools for microbenchmark creation and evaluation on different architectures. It is divided into three sub-projects: MicroCreator, MicroLauncher, and MicroDetector.
Copyright ©2011-2012 Intel, Université de Versailles St-Quentin-en-Yvelines
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
MicroPerf is released under the GNU General Public License, version 3. Please refer to the file LICENSE that accompanies your copy of MicroPerf.
This work has been done in the Exascale Computing Research lab, thanks to the support of CEA, GENCI, Intel and UVSQ.
For any question regarding MicroPerf, please write at [email protected] Contributors
-
Jean Christophe Beyler, Thibault Fighiera, wrote the first versions of the three tools
-
Nicolas Triquenaux and Jean-Philippe Halimi worked on the MicroLauncher tool
-
Farid Chabane worked on the MicroCreator tool
-
Erin Beyler reviewed and edited extensively the documentation
Old Contributors:
- The original MicroLauncher idea was done via a tool called Kerbe and was contributed by:
- Christophe Lemuet (main)
- Stéphane Zuckerman
- Xavier Le Pasteur
- Mickael Ivascot
- Sid Touati
- William Jalby