skip to main content
10.1145/1006209.1006243acmconferencesArticle/Chapter ViewAbstractPublication PagesicsConference Proceedingsconference-collections
Article

Adaptive java optimisation using instance-based learning

Published: 26 June 2004 Publication History

Abstract

This paper describes a portable,machine learning-based approach to Java optimisation. This approach uses an instance-based learning scheme to select good transformations drawn from Pugh 's Unified Transformation Framework [11]. This approach was implemented and applied to a number of numerical Java benchmarks on two platforms. Using this scheme, we are able to gain over 70% of the performance improvement found when using an exhaustive iterative search of the best compiler optimisations. Thus we have a scheme that gives a high level of portable performance without any excessive compilations.

References

[1]
A. Adl-Tabatabai, M. Cierniak, G. Lueh, V. Parikh and J. Stichnoth. Fast, effective code generation in a just-in-time Java compiler. The 1998 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI'98), 1998.
[2]
B. Alpern, A. Cocchi, D. Lieber, M. Mergen and V. Sarkar. Jalapeno - a compiler-supported Java virtual machine for servers. Workshop on Compiler Support for Software System (WCSSS99), 1999.
[3]
E. Addreasson, F. Hoffman and O. Lindholm. To collect or not to collect? machine learning for memory management. The 2nd Java Virtual Machine Research and Technology Symposium (JVM'02), 2002.
[4]
S. Beaty and S. Colcord. Using genetic algorithm to fine-tune instruction scheduling heuristics. International Conference on Massively Parallel Computer Systems, 1996.
[5]
A. Bik and D. Gannon. javar - a prototype Java reconstructing compiler. Concurrency, Practice and Experience. 9(11), 1997.
[6]
M. Bull, L. Smith, M. Westhead, D. Henty and R. Davey. A benchmark suite for high performance Java. Concurrency, Practice and Experience, 12, 2000.
[7]
K. Cooper, D. Subramanian and L. Torczon. Adaptive optimizing compilers for the 21st century. Journal of Supercomputing, 2001.
[8]
L. Davis. Handbook of genetic algorithm. Van Nostrand Reihold, 1991.
[9]
G. Fursin, M. O'Boyle and P. Knijnenburg. Evaluating iterative compilation. The 15th Workshop on Languages and Compilers for Parallel Computers (LCPC'02), 2002.
[10]
Java Grande Forum. Making Java work for high-end computing. SC98: High Performance Networking and Computing, 1998.
[11]
W. Kelly and W. Pugh. A framework for unifying reordering transformations. Technical report of University of Maryland, CS-TR-3193, 1993.
[12]
T. Kisuki, P. Knijnenburg and M. O'Boyle. Combined selection of tile sizes and unroll factors Using iterative compilation. The 2000 International Conference on Parallel Architecture and Compilation Techniques (PACT'00), 2000.
[13]
C. Lattner and V. Adve. LLVM: a compilation framework for lifelong program analysis & transformation. The 2004 International Symposium on Code Generation and Optimisation (CGO'04), 2004.
[14]
S. Long and M. O'Boyle. Towards an adaptive Java optimising compiler, an empirical evaluation of program transformations. The 3rd Workshop on Java for High Performance Computing, 2001.
[15]
S. Long. Adaptive Java optimisation using machine learning techniques. PhD thesis, School of Informatics, The University of Edinburgh. 2004.
[16]
A. Monsifrot and F. Bodin. Computer Aided Hand Tuning (CAHT): applying case-based reasoning to performance tuning. The 15th ACM International Conference on Supercomputing (ICS'01), 2001.
[17]
A. Monsifrot, F. Bodin and R. Quiniou. A machine learning approach to automatic production of compiler heuristics. The 10th International Conference on Artificial Intelligence: Methodology, Systems, Applications (AIMSA), 2002.
[18]
T. Mitchell. Machine learning. McGraw-Hill, 1997.
[19]
E. Moss, P. Utgoff, J. Cavazos, D. Precup, D. Stefenovic, C. Brodley and D. Scheeff. Learning to schedule straight-line code. Neural Information Processing Systems, 1997.
[20]
A. Nisbet. GAPS: iterative feedback directed parallelisation using genetic algorithms. The 12nd ACM International Conference for Supercomputing (ICS'98), 1998.
[21]
M. O'Boyle, P. Knijnenburg and G. Frusin. Feedback directed iterative compilation. The 15th Workshop on Languages and Compilers for Parallel Computing (LCPC'02), 2002.
[22]
J. Shirazi. Java performance tuning. O'Reilly, 2002.
[23]
B. Singer and M. Veloso. Learning to generate fast signal processing implementations. The International Conference on Machine Learning (ICML-2001), 2001.
[24]
B. Singer and M. Veloso. Stochastic search for signal processing algorithm optimization. Scientific Computing (SC2001), 2001.
[25]
M. Stephenson, U. O'Reilly, M. Martin and S. Amarasinghe. Genetic programming applied to compiler heuristic optimisation. The 6th European Conference on Genetic Programming, 2003.
[26]
M. Stephenson, S. Amarasinghe, M. Martin and U. O'Reilly. Meta optimisation: improving compiler heuristics with machine learning. The 2003 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI'03), 2003.

Cited By

View all
  • (2022)Machine-Learning-Based Self-Optimizing Compiler Heuristics✱Proceedings of the 19th International Conference on Managed Programming Languages and Runtimes10.1145/3546918.3546921(98-111)Online publication date: 14-Sep-2022
  • (2022)Fuzzy Active Learning to Detect OpenCL Kernel Heterogeneous Machines in Cyber Physical SystemsIEEE Transactions on Fuzzy Systems10.1109/TFUZZ.2022.316715830:11(4618-4629)Online publication date: Nov-2022
  • (2018)Speeding up Iterative Polyhedral Schedule Optimization with Surrogate Performance ModelsACM Transactions on Architecture and Code Optimization10.1145/329177315:4(1-27)Online publication date: 19-Dec-2018
  • Show More Cited By

Index Terms

  1. Adaptive java optimisation using instance-based learning

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Conferences
      ICS '04: Proceedings of the 18th annual international conference on Supercomputing
      June 2004
      360 pages
      ISBN:1581138393
      DOI:10.1145/1006209
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Sponsors

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 26 June 2004

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. adaptive optimisation
      2. instance-based learning
      3. java
      4. optimisation space

      Qualifiers

      • Article

      Conference

      ICS04
      Sponsor:

      Acceptance Rates

      Overall Acceptance Rate 629 of 2,180 submissions, 29%

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)1
      • Downloads (Last 6 weeks)0
      Reflects downloads up to 05 Mar 2025

      Other Metrics

      Citations

      Cited By

      View all
      • (2022)Machine-Learning-Based Self-Optimizing Compiler Heuristics✱Proceedings of the 19th International Conference on Managed Programming Languages and Runtimes10.1145/3546918.3546921(98-111)Online publication date: 14-Sep-2022
      • (2022)Fuzzy Active Learning to Detect OpenCL Kernel Heterogeneous Machines in Cyber Physical SystemsIEEE Transactions on Fuzzy Systems10.1109/TFUZZ.2022.316715830:11(4618-4629)Online publication date: Nov-2022
      • (2018)Speeding up Iterative Polyhedral Schedule Optimization with Surrogate Performance ModelsACM Transactions on Architecture and Code Optimization10.1145/329177315:4(1-27)Online publication date: 19-Dec-2018
      • (2018)Polyhedral Search Space Exploration in the ExaStencils Code GeneratorACM Transactions on Architecture and Code Optimization10.1145/327465315:4(1-25)Online publication date: 10-Oct-2018
      • (2018)Yet Another Intelligent Code-Generating System: A Flexible and Low-Cost SolutionJournal of Computer Science and Technology10.1007/s11390-018-1867-733:5(940-965)Online publication date: 12-Sep-2018
      • (2017)Iterative Schedule Optimization for Parallelization in the Polyhedron ModelACM Transactions on Architecture and Code Optimization10.1145/310948214:3(1-26)Online publication date: 22-Aug-2017
      • (2017)Autotuning Stencil Computations with Structural Ordinal Regression Learning2017 IEEE International Parallel and Distributed Processing Symposium (IPDPS)10.1109/IPDPS.2017.102(287-296)Online publication date: May-2017
      • (2015)Celebrating diversity: a mixture of experts approach for runtime mapping in dynamic environmentsACM SIGPLAN Notices10.1145/2813885.273799950:6(499-508)Online publication date: 3-Jun-2015
      • (2015)Celebrating diversity: a mixture of experts approach for runtime mapping in dynamic environmentsProceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation10.1145/2737924.2737999(499-508)Online publication date: 3-Jun-2015
      • (2015)The use of different strategies of search space reduction in mitigation of optimization selection problem2015 Latin American Computing Conference (CLEI)10.1109/CLEI.2015.7360040(1-12)Online publication date: Oct-2015
      • Show More Cited By

      View Options

      Login options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Figures

      Tables

      Media

      Share

      Share

      Share this Publication link

      Share on social media