statistical analysis of inlining heuristics in jikes rvm jing yang [email protected] department...
TRANSCRIPT
![Page 1: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/1.jpg)
Statistical Analysis of Inlining Heuristics in Jikes RVM
Jing [email protected]
Department of Computer Science, University of Virginia
![Page 2: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/2.jpg)
Outline
Introduction Data Set Description Data Analysis, Summarization and
Interpretation Future Work Conclusion
![Page 3: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/3.jpg)
Introduction
Java highly portable programming language portability is often at the cost of execution speed seeking optimizations to improve the performance inlining – one of the heavily used optimizations
reduce overhead associated with the function call code expansion aggressive inlining can hurt performance
![Page 4: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/4.jpg)
Introduction
![Page 5: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/5.jpg)
Introduction
Inlining Heuristic used in Java Virtual Machines to decide whether to
inline or not need to be tuned to achieve the optimal solution current tuning technique
manually – not accurate genetic algorithm – time-consuming due to the large
number of parameters
![Page 6: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/6.jpg)
Introduction
Goal locate parameters used in the inlining heuristic that
actually impact its performance focus on these “effective” parameters
reduce time for tuning process simplify the inlining heuristic to reduce its running
overhead without sacrificing its performance
![Page 7: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/7.jpg)
Data Set Description
![Page 8: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/8.jpg)
Data Set Description
![Page 9: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/9.jpg)
Data Set Description
Data Collection a complete combination of all the values – 500 for each configuration, run the whole SPECjvm98
benchmark (including nine Java programs) – 9 within each run, collect three performance metrics
(compiled code size, compilation time, execution time) – 3
raw data – 500*9*3=13,500 observations form the raw data into different formats for different
statistical analysis
![Page 10: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/10.jpg)
Data Analysis, Summarization and Interpretation
Inside Performances 3 variables – compiled code size, compilation time,
execution time geometric mean from the first seven benchmarks in
SPECjvm98 500 observations standardization before analysis
![Page 11: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/11.jpg)
Data Analysis, Summarization and Interpretation
Principal Component Analysis
![Page 12: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/12.jpg)
Data Analysis, Summarization and Interpretation
First Principal Component explain 71.58% of the total sample variance. correlations between the first principal component
and the three variables
compiled code size/compilation time has a contrast to execution time
accords with our intuition of inlining
![Page 13: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/13.jpg)
Data Analysis, Summarization and Interpretation
Performances versus Parameters 7 variables – four parameters and three
performance metrics 500 observations standardization before analysis
![Page 14: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/14.jpg)
Data Analysis, Summarization and Interpretation
Canonical Correlation Analysis
![Page 15: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/15.jpg)
Data Analysis, Summarization and Interpretation
Only Consider One Performance Metric
![Page 16: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/16.jpg)
Data Analysis, Summarization and Interpretation
Conclusion CALLEE_MAX_SIZE and MAX_INLINE_DEPTH
are important ALWAYS_INLINE_SIZE and CALLER_MAX_SIZE
can be neglected unless only optimizing execution time
![Page 17: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/17.jpg)
Data Analysis, Summarization and Interpretation
Verification classify data from the remaining two benchmarks the more important a parameter is, the better
classification can be performed based on it Fisher's discriminant function
pairwise classifications based on CALLEE_MAX_SIZE multi-population classification based on
CALLEE_MAX_SIZE most separate pairwise classification based on
ALWAYS_INLINE_SIZE, MAX_INLINE_DEPTH and CALLER_MAX_SIZE
![Page 18: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/18.jpg)
Data Analysis, Summarization and Interpretation
![Page 19: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/19.jpg)
Data Analysis, Summarization and Interpretation
![Page 20: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/20.jpg)
Data Analysis, Summarization and Interpretation
![Page 21: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/21.jpg)
Data Analysis, Summarization and Interpretation
![Page 22: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/22.jpg)
Future Work
Verification by Jikes RVM Better Discriminant Function Statistical Method to Find Optimal Solution Program Properties
![Page 23: Statistical Analysis of Inlining Heuristics in Jikes RVM Jing Yang jy8y@cs.virginia.edu Department of Computer Science, University of Virginia](https://reader033.vdocuments.net/reader033/viewer/2022042822/56649f1e5503460f94c364e3/html5/thumbnails/23.jpg)
Conclusion
Locate and Verify the Important Parameters Reduce Time for Tuning Process Simplify the Inlining Heuristic