Publication | Open Access
Performance measurements for multithreaded programs
10
Citations
13
References
1998
Year
Cluster ComputingEngineeringComputer ArchitectureSoftware EngineeringMultithreading (Computer Architecture)Software AnalysisFile System BandwidthSystems EngineeringParallel ComputingParallel File SystemConcurrent ProgrammingComputer EngineeringComputer SciencePerformance Analysis ToolMultithreaded ProgramsProgram AnalysisSoftware TestingThread Waiting TimeParallel Performance EvaluationParallel ProgrammingFile SystemSystem Software
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 bandwidth and throughput significantly. In one case, we were able to improve the bandwidth by two orders of magnitude.
| Year | Citations | |
|---|---|---|
Page 1
Page 1