From cTuning.org

(Difference between revisions)
Jump to: navigation, search
(substituted HTML tags with Wiki tags)
Line 14: Line 14:
ICI features added to the framework for fine-grain tuning are documented here.
ICI features added to the framework for fine-grain tuning are documented here.
{| border="1" cellspacing="0" cellpadding="3" style="text-align:left;"
{| border="1" cellspacing="0" cellpadding="3" style="text-align:left;"
-
! Feature name
+
! Feature name !! Type of contents !! Description
-
! Type of contents
+
-
! Description
+
|-
|-
-
| <tt>"dummy"</tt>
+
! "dummy"
| array of strings, i.e., char **
| array of strings, i.e., char **
| dummy feature here.
| dummy feature here.
Line 31: Line 29:
'''Required Events and parameters'''
'''Required Events and parameters'''
-
<ul>
+
 
-
<li><b>"pass_execution"</b>: this event is triggered when a GCC pass is about to run.</li>
+
* '''"pass_execution"''': this event is triggered when a GCC pass is about to run.</li>
-
<li><b>"all_passes_manager"</b></li>
+
* '''"all_passes_manager"''':
-
<li><b>"avoid_gate"</b></li>
+
* '''"avoid_gate"''':
-
</ul>
+
 
<!-- TODO: add other events needed, and give links to them. -->
<!-- TODO: add other events needed, and give links to them. -->
'''State'''
'''State'''
This plugin now can record and reuse optimization passes without problem, with the following issues to solve:
This plugin now can record and reuse optimization passes without problem, with the following issues to solve:
-
<ul>
+
 
-
<li>The compilation won't fall to default compilation process when no corresponding XML can be found.</li>
+
* The compilation won't fall to default compilation process when no corresponding XML can be found.</li>
-
<li>The plugin cannot handle interprocedual passes well.</li>
+
* The plugin cannot handle interprocedual passes well.</li>
-
</ul>
+

Revision as of 12:30, 25 June 2009

Common page for GSOC09 and other developments in summer 2009: function cloning, fine-grain optimizations, program instrumentation:


Contents

Fine-grain optimization project

Yuanjie Huang (ICT, China)

This project aims to provide fine-grain optimization selection and tuning abilities in GCC, and thus enable GCC to tune default optimization heuristic of the compiler or fine optimizations for a given program on a given architecture entirely automatically using statistical and machine learning techniques from the MILEPOST project.

ICI Events

ICI events added to the framework for fine-grain tuning are documented here.

ICI Features

ICI features added to the framework for fine-grain tuning are documented here.

Feature name Type of contents Description
"dummy" array of strings, i.e., char ** dummy feature here.

Plugins

Plugins developed for fine-grain tuning are documented here. These plugins are developed to work with ICI-2.0 interface.

adapt-passes

Description

The function of this plugin depends on ICI_ADAPT_CONTROL environmental variable, which can be either set to 1 to record passes for each function into XML files or set to 2 to reuse passes from XML files to substitute passes in GCC compiling process.

Required Events and parameters

  • "pass_execution": this event is triggered when a GCC pass is about to run.</li>
  • "all_passes_manager":
  • "avoid_gate":


State This plugin now can record and reuse optimization passes without problem, with the following issues to solve:

  • The compilation won't fall to default compilation process when no corresponding XML can be found.</li>
  • The plugin cannot handle interprocedual passes well.</li>
Locations of visitors to this page