Performance measurements for multithreaded programs

18Citations
Citations of this article
9Readers
Mendeley users who have this article in their library.

Abstract

Multithreaded programming is an effective way to exploit concurrency, but it is difficult to debug and tune a highly threaded program. This paper describes a performance tool called Tmon for monitoring, analyzing and tuning the performance of multithreaded programs. The performance tool has two novel features: it uses "thread waiting time" as a measure and constructs thread waiting graphs to show thread dependencies and thus performance bottlenecks, and it identifies "semi-busy-waiting" points where CPU cycles are wasted in condition checking and context switching. We have implemented the Tmon tool and, as a case study, we have used it to measure and tune a heavily threaded file system. We used four workloads to tune different aspects of the file system. We were able to improve the file system band-width and throughput significantly. In one case, we were able to improve the bandwidth by two orders of magnitude.

Cite

CITATION STYLE

APA

Ji, M., Felten, E. W., & Li, K. (1998). Performance measurements for multithreaded programs. Performance Evaluation Review, 26(1), 161–170. https://doi.org/10.1145/277858.277900

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free