In operating systems, resource managers are developed according to simplicity, low overhead, low memory footprint, extensibility and efficiency. Thread schedulers are designed and developed following these implementation-related guidelines. The performance of the implementation is then tested over a set of benchmarks. However, the ability to provide real-time guarantees of these policies is rarely properly quantified. To respond to this need, we developed a publicly available tool (rt-muse), that analyzes timing properties extracted from the execution of a set of threads and it computes the lower/upper bounds to the supply function offered by the execution platform. Also, rt-muse evaluates the impact of many application and platform characteristics including the scheduling algorithm, the amount of available resources, the usage of shared resources, the memory access overhead, etc. In the experiments, we show the impact of Linux scheduling classes, shared data and application parallelism, on the delivered computing capacity. The tool provides useful insights on the runtime behavior of the applications and scheduler. For example, we detected unexpected starvation of threads scheduled by the Linux round-robin class.
A Tool for Measuring Supply Functions of Execution Platforms
BINI, Enrico
2016-01-01
Abstract
In operating systems, resource managers are developed according to simplicity, low overhead, low memory footprint, extensibility and efficiency. Thread schedulers are designed and developed following these implementation-related guidelines. The performance of the implementation is then tested over a set of benchmarks. However, the ability to provide real-time guarantees of these policies is rarely properly quantified. To respond to this need, we developed a publicly available tool (rt-muse), that analyzes timing properties extracted from the execution of a set of threads and it computes the lower/upper bounds to the supply function offered by the execution platform. Also, rt-muse evaluates the impact of many application and platform characteristics including the scheduling algorithm, the amount of available resources, the usage of shared resources, the memory access overhead, etc. In the experiments, we show the impact of Linux scheduling classes, shared data and application parallelism, on the delivered computing capacity. The tool provides useful insights on the runtime behavior of the applications and scheduler. For example, we detected unexpected starvation of threads scheduled by the Linux round-robin class.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.