Presentation is loading. Please wait.

Presentation is loading. Please wait.

Does Training Input Selection Matter for Feedback-Directed Optimizations? Paul Berube University of Alberta CDP05, October 17, 2005.

Similar presentations


Presentation on theme: "Does Training Input Selection Matter for Feedback-Directed Optimizations? Paul Berube University of Alberta CDP05, October 17, 2005."— Presentation transcript:

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


Download ppt "Does Training Input Selection Matter for Feedback-Directed Optimizations? Paul Berube University of Alberta CDP05, October 17, 2005."

Similar presentations


Ads by Google