IBM Israel
Skip to main content
 
Search IBM Research
   Home  |  Products & services  |  Support & downloads  |  My account
Select a Country Select a country
IBM Research Home IBM Research Home
IBM Haifa Labs Homepage IBM Haifa Labs Home

Expert System for Tuning Optimizations (ESTO)

Performance Analysis and Optimizations Technologies
Project Homepage
 ·Contact Information
Feedback


Expert System for Tuning Optimizations (ESTO)
  Overview

ESTO (Expert System for Tuning Optimizations) automates the process of identifying and tuning the optimal set of optimization options used when generating performance-optimized programs.

A typical use is to tune, for maximum performance, the optimization options used by a compiler when creating an application.

The set of possible optimizations is usually very large, an order of tens. In addition, some of the options require an additional parameter, which makes the selection process even more complex.

Selecting the optimal set for a given application is complex because optimization options do not necessarily add performance when combined with other options, and/or when used for certain application and a certain workload.

As a result of this complexity, users tend to use combination options, such as -O, O1, etc. These combinations select a subset of the optimization options that have shown up, in order to provide stable, high performance for large number of applications. Thus, in general, these options are not the optimal set for a specific application executing its representative workload.

Our goal is to define a strategy of finding the "optimal combination" of parameters for each concrete target program. This should occur during a minimal number of time-consuming cycles:
  1. Determine the parameters
  2. Run the program generator
  3. Measure the result
  4. Compare
  5. Decide

While it is not possible to prove that the "optimal combination" is indeed optimal in the absolute sense, it would be optimal in the sense that no significantly better set (more than a fraction of a percentage) can be found for most of the applications tested.

Future directions include enabling ESTO to be applied to compilers running on IBM platforms, Linux, and AIX.

  Publications



 

  About IBM  |  Privacy  |  Legal  |  Contact