Title Information
Title
Automated Performance Modeling of Multithreaded Programs
Name: Personal
Name Part
Tarvo, Alexander
Role
Role Term: Text
creator
Origin Information
Copyright Date
2015
Physical Description
Extent
xii, 155 p.
digitalOrigin
born digital
Note
Thesis (Ph.D. -- Brown University (2015)
Name: Personal
Name Part
Reiss, Steven
Role
Role Term: Text
Director
Name: Personal
Name Part
Cetintemel, Ugur
Role
Role Term: Text
Reader
Name: Personal
Name Part
Fonseca, Rodrigo
Role
Role Term: Text
Reader
Name: Personal
Name Part
Thereska, Eno
Role
Role Term: Text
Reader
Name: Corporate
Name Part
Brown University. Computer Science
Role
Role Term: Text
sponsor
Genre (aat)
theses
Abstract
The performance of multithreaded programs is often difficult to understand and predict. Multiple threads use various locking operations, resulting in the parallel execution of some computations and the sequential execution of others. Threads use hardware resources such as a CPU or a hard drive simultaneously, which may lead to their saturation. The result is a complex non-linear dependency between the configuration of a multithreaded program and its performance. To better understand this dependency a performance prediction model is used. Such a model predicts the performance of a system for different configurations. Configurations reflect variations in the workload, program options such as the number of threads, and characteristics of the hardware. Performance models are complex and require a solid understanding of the pogram's behavior. As a result, building models of large applications manually is extremely time-consuming and error-prone. In this work we present an approach for building performance models of multithreaded programs automatically. We employ hierarchical discrete-event models. The higher-level model simulates the data flow through the program using the queueing network. The mid-level model simulates program's threads using probabilistic call graphs. The low-level model simulates program-wide locks and underlying hardware. We extract information necessary for constructing the model using a combination of static and dynamic analyses of the program under study. This includes information about the structure of the program, the semantics of interaction between the program's threads, and resource demands of individual program's components. The discovered information is translated into the discrete-event model of the program. In our experiments we successfully generated performance models of a suite of large multithreaded programs. The resulting models predicted performance of these programs across a range of configurations with a reasonable degree of accuracy.
Subject
Topic
Program analysis
Subject
Topic
prediction
Subject
Topic
simulation
Subject (FAST) (authorityURI="http://id.worldcat.org/fast", valueURI="http://id.worldcat.org/fast/1057829")
Topic
Performance
Subject (FAST) (authorityURI="http://id.worldcat.org/fast", valueURI="http://id.worldcat.org/fast/1024369")
Topic
Modeling
Subject (FAST) (authorityURI="http://id.worldcat.org/fast", valueURI="http://id.worldcat.org/fast/931721")
Topic
Forecasting
Subject (FAST) (authorityURI="http://id.worldcat.org/fast", valueURI="http://id.worldcat.org/fast/872518")
Topic
Computer simulation
Record Information
Record Content Source (marcorg)
RPB
Record Creation Date (encoding="iso8601")
20150601
Language
Language Term: Code (ISO639-2B)
eng
Language Term: Text
English
Identifier: DOI
10.7301/Z0FB519W
Access Condition: rights statement (href="http://rightsstatements.org/vocab/InC/1.0/")
In Copyright
Access Condition: restriction on access
Collection is open for research.
Type of Resource (primo)
dissertations