Measuring Software Performance on Linux

11/04/2018
by   Martin Becker, et al.
0

Measuring and analyzing the performance of software has reached a high complexity, caused by more advanced processor designs and the intricate interaction between user programs, the operating system, and the processor's microarchitecture. In this report, we summarize our experience about how performance characteristics of software should be measured when running on a Linux operating system and a modern processor. In particular, (1) We provide a general overview about hardware and operating system features that may have a significant impact on timing and how they interact, (2) we identify sources of errors that need to be controlled in order to obtain unbiased measurement results, and (3) we propose a measurement setup for Linux to minimize errors. Although not the focus of this report, we describe the measurement process using hardware performance counters, which can faithfully reflect the real bottlenecks on a given processor. Our experiments confirm that our measurement setup has a large impact on the results. More surprisingly, however, they also suggest that the setup can be negligible for certain analysis methods. Furthermore, we found that our setup maintains significantly better performance under background load conditions, which means it can be used to improve software in high-performance applications.

READ FULL TEXT

page 3

page 17

page 18

page 20

page 21

research
11/23/2020

RVCoreP-32IC: A high-performance RISC-V soft processor with an efficient fetch unit supporting the compressed instructions

In this paper, we propose a high-performance RISC-V soft processor with ...
research
04/20/2023

Test-driving RISC-V Vector hardware for HPC

Whilst the RISC-V Vector extension (RVV) has been ratified, at the time ...
research
02/10/2020

RVCoreP : An optimized RISC-V soft processor of five-stage pipelining

RISC-V is a RISC based open and loyalty free instruction set architectur...
research
02/15/2020

High-speed KATAN Ciphers on-a-Chip

Security in embedded systems has become a main requirement in modern ele...
research
08/21/2017

Entirely protecting operating systems against transient errors in space environment

In this article, we propose a mainly-software hardening technique to tot...
research
05/16/2022

Analyzing FreeRTOS Scheduling Behaviors with the Spin Model Checker

FreeRTOS is a real-time operating system with configurable scheduling po...
research
02/23/2023

ProSpeCT: Provably Secure Speculation for the Constant-Time Policy (Extended version)

We propose ProSpeCT, a generic formal processor model providing provably...

Please sign up or login with your details

Forgot password? Click here to reset