-
Notifications
You must be signed in to change notification settings - Fork 2
MicroLauncher
MicroLauncher launches synthetic benchmark programs. It executes programs with slight differences and help analyze the slight changes' impact on the underlying architecture. The goal being to aid hardware and software architects better comprehend the execution of software on the hardware. It is a C project and a stand-alone program.
MicroLauncher is one of the MicroPerf Tools divided into three sub-projects:
MicroCreator generates benchmark programs relating to memory
MicroLauncher_executes benchmarks, obtaining consistent results
MicroDetector detects architectural elements of the machine
The creation of MicroLauncher originated with the work on a tool called Kerbe, which allowed users to try different data allocation methods and test different microbenchmark programs. However, the user would recompile each test program, making it unusable for a beginner. MicroLauncher replaced the original tool by allowing users to directly integrate their benchmark program into Kerbe and retrieve performance evaluation. Chapter: 1 enumerates the pros and cons of MicroLauncher.
Chapter 2 explains where to download or retrieve MicroLauncher's source code and how to install it. It also gives links to external dependencies, which are required for correct execution of the tool. Finally, through examples provided with the tool, the chapter illustrates the first few uses of MicroLauncher.
Chapter 3 goes through the main usage of the tool. Once the user installs the tool, users generally want to use the most common options and start analyzing their programs. The General Usage chapter is a presentation of the tool for these new users. It presents the major options and what to expect as output. It also shows how to post-process the results in order to obtain performance graphs.
Chapter 4 breaks down every user option of MicroLauncher. There are currently more than thirty to tune the behavior of the tool. The User Options chapter defines each option, what it modifies, and its default value. MicroLauncher supports two types of input programs_assembly kernels and full executable applications. Therefore, there are specific options to each case. Finally, the chapter presents the options available in both modes.
Chapter 5 presents each error message MicroLauncher provides to users. It also gives insight as to what caused each error and how to fix it.
Chapter 6 is the expert user chapter because it shows tips and tricks concerning MicroLauncher's use and lessons current users have already learned.
Chapter 7 presents MicroLauncher's code structure for future contributors or people interested in how elements were programmed in the tool.