KRASH: Reproducible CPU Load Generation on Many-Core Machines

Abstract : In this article we present KRASH, a tool for reproducible generation of system-level CPU load. This tool is intended for use in shared memory machines equipped with multiple CPU cores which are usually exploited concurrently by several users. The objective of KRASH is to enable parallel application developers to validate their resources use strategies on a partially loaded machine by replaying an observed load in concurrence with their application. To reach this objective, we present a method for CPU load generation which behaves as realistically as possible: the resulting load is similar to the load that would be produced by concurrent processes run by other users. Nevertheless, contrary to a simple run of a CPU-intensive application, KRASH is not sensitive to system scheduling decisions. The main benefit brought by KRASH is this reproducibility: no matter how many processes are present in the system the load generated by our tool strictly respects a given load profile. This last characteristic proves to be hard to achieve using simple methods because the system scheduler is supposed to share the resources fairly among running processes. Our first contribution is a method that cooperates with the system scheduler to produce a CPU load that conforms to a desired load profile. We argue that this cooperation with the system scheduler is mandatory in the generator to reach a good reproducibility, a high precision and a low intrusiveness. Taking advantage of Linux kernel capabilities, we implemented this method in KRASH (Kernel for Reproduction and Analysis of System Heterogeneity). We have run experiments that show that KRASH provides a precise reproduction of the desired load and that it induces a very low overhead on the system. Our second contribution is a qualitative and quantitative study that compares KRASH to other tools dealing with system-level CPU load generation. To our knowledge, KRASH is the only tool that implements the generation of a dynamic load profil- - e (a load varying with time). When used to generate a constant load, KRASH result is among the most realistic ones. Furthermore, KRASH provides more flexibility than other tools.
Type de document :
Communication dans un congrès
IEEE International Parallel and Distributed Processing Symposium (IPDPS), 2010, Atlanta, United States. 2010, 〈10.1109/IPDPS.2010.5470448〉
Liste complète des métadonnées

https://hal.inria.fr/hal-00798449
Contributeur : Grégory Mounié <>
Soumis le : vendredi 8 mars 2013 - 15:31:57
Dernière modification le : jeudi 11 janvier 2018 - 06:22:02

Identifiants

Collections

Citation

Swann Perarnau, Guillaume Huard. KRASH: Reproducible CPU Load Generation on Many-Core Machines. IEEE International Parallel and Distributed Processing Symposium (IPDPS), 2010, Atlanta, United States. 2010, 〈10.1109/IPDPS.2010.5470448〉. 〈hal-00798449〉

Partager

Métriques

Consultations de la notice

164