Download presentation
Presentation is loading. Please wait.
Published byMelissa Adams Modified over 9 years ago
1
Does Training Input Selection Matter for Feedback-Directed Optimizations? Paul Berube berube@cs.ualberta.ca University of Alberta CDP05, October 17, 2005
2
September 28, 2005Paul Berube2 Outline Background and motivation Aestimo: an FDO evaluation tool Workload Selection Results
3
September 28, 2005Paul Berube3 What Is FDO? compiletrain Feedback-Directed Optimization: compileevaluate
4
September 28, 2005Paul Berube4 What Is FDO? compiletrain Feedback-Directed Optimization: compileevaluate training input profile eval input
5
September 28, 2005Paul Berube5 Performance Evaluation Space Programs Evaluation Inputs Static optimization
6
September 28, 2005Paul Berube6 Performance Evaluation Space Programs Evaluation Inputs Training Inputs FDO
7
September 28, 2005Paul Berube7 Performance Evaluation Space Programs Evaluation Inputs Training Inputs Only 1 Train input SPEC Usually 1 Ref input
8
September 28, 2005Paul Berube8 The Big Question Does the selection of training inputs matter for feedback-directed optimization? –Different transformation decisions? –Different performance?
9
September 28, 2005Paul Berube9 Aestimo An FDO evaluation tool Automates training and evaluating on a large number of inputs Isolates individual transformations –Fewer experiment variables –Results vary by transformation Measures: –Differences in transformation decisions –Performance differences
10
September 28, 2005Paul Berube10 An Overview of Aestimo Compile Binaries Optimization Logs Execute Analyze Program Workload
11
September 28, 2005Paul Berube11 An Overview of Aestimo Compile Binaries Optimization Logs Execute Analyze Program Workload One Per Input
12
September 28, 2005Paul Berube12 An Overview of Aestimo Compile Binaries Optimization Logs Execute Analyze Program Workload Binary X Input 5 times each
13
September 28, 2005Paul Berube13 An Overview of Aestimo Compile Binaries Optimization Logs Execute Analyze Program Workload Performanc e
14
September 28, 2005Paul Berube14 An Overview of Aestimo Compile Binaries Optimization Logs Execute Analyze Program Workload Performanc e Transformatio n Differences
15
September 28, 2005Paul Berube15 An Overview of Aestimo Compile Binaries Optimization Logs Execute Analyze Program Workload Performanc e Transformatio n Differences FDO vs. Static
16
September 28, 2005Paul Berube16 An Overview of Aestimo Compile Binaries Optimization Logs Execute Analyze Program Workload Performanc e Transformatio n Differences FDO vs. Static Resubstitutio n
17
September 28, 2005Paul Berube17 Compilation Process Static Binary Optimization Log Source Static Compile
18
September 28, 2005Paul Berube18 Compilation Process Source Static Compile Static Binary Optimization Log Training Input Instrumented Binary Instr. Compile Training Run Profile FDO Compile FDO Binary
19
September 28, 2005Paul Berube19 Compilation Process Source Static Compile Static Binary Optimization Log Instr. Compile Training Run Profile FDO Compile FDO Binary Training Input Optimization Log Static Compile Final Binary Instrumented Binary
20
September 28, 2005Paul Berube20 Compilation Process Source Static Compile Static Binary Optimization Log Instr. Compile Instrumented Binary Training Run Profile FDO Compile FDO Binary Training Input Optimization Log Static Compile Final Binary
21
September 28, 2005Paul Berube21 Workload Selection SPEC CINT2000 Benchmark inputs –8 programs, 32 input 84 Additional Inputs –Contacted benchmark authors –Varied representative inputs –Existing collections –Synthetic input generator
22
September 28, 2005Paul Berube22 Results ORC compiler Inlining and if conversion Itanium and Itanium 2 processors
23
September 28, 2005Paul Berube23 Workload Performance: bzip2 Inlining Itanium
24
September 28, 2005Paul Berube24 Workload Performance: bzip2 Training Input Selection Matters! Inlining Itanium
25
September 28, 2005Paul Berube25 Summary of Contributions Training input selection does impact optimization decisions and performance Aestimo: –Automates training and evaluating on a large number of inputs –Isolates individual transformations A large collection of representative inputs for SPEC CINT2000 programs
26
September 28, 2005Paul Berube26 Thank You Questions?
27
September 28, 2005Paul Berube27 Performance: bzip2 trained on xml Inlining Itanium
28
September 28, 2005Paul Berube28 Performance: bzip2.combined Inlining Itanium
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.