Skip to main navigation Skip to search Skip to main content

Performance measurements for multithreaded programs

  • Minwen Ji
  • , Edward William Felten
  • , Kai Li

Research output: Contribution to journalArticlepeer-review

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.

Original languageEnglish (US)
Pages (from-to)161-170
Number of pages10
JournalPerformance Evaluation Review
Volume26
Issue number1
DOIs
StatePublished - Jun 1998

All Science Journal Classification (ASJC) codes

  • Software
  • Hardware and Architecture
  • Computer Networks and Communications

Fingerprint

Dive into the research topics of 'Performance measurements for multithreaded programs'. Together they form a unique fingerprint.

Cite this