Compilers
 
Forums: » Register « |  User CP |  Games |  Calendar |  Members |  FAQs |  Sitemap |  Support | 
 
User Name:
Password:
Remember me
Go Back   Web Development Archives FAQs Compilers

Reply
Add This Thread To:
  Del.icio.us   Digg   Google   Spurl   Blink   Furl   Simpy   Y! MyWeb 
Thread Tools Search this Thread Display Modes
 
Unread Web Development Archives Sponsor:
  #1  
Old June 2nd, 2008, 01:20 PM
Stephan Ceram
Guest
Dev Archives Newbie (0 - 499 posts)
 
Posts: n/a  
Time spent in forums:
Reputation Power:
Machine Learning in Optimization ?

Hi,

I've read the paper "Using Machine Learning to Focus Iterative
" where the authors use machine learning to learn "good"
sequences of compiler transformations for particular classes of
programs. They then use the learned data as start sequences for new
programs to run an focused iterative compiler optimization based on a
genetic algorithm. That way they don't waste time with "worse"
sequences.

Just out of curiosity I was wondering how the machine learning system
is integrated into a compiler. Is this done by having a data base
which is extended during learning or are the results stored in a file?
And what free tools are there which can be integrated in a C++
project? Any powerful C++ libraries?

I'd be grateful to hear your experiences.

Thank you.

Best regards,
Stephan


Reply With Quote
  #2  
Old June 9th, 2008, 06:40 PM
Stephan Ceram
Guest
Dev Archives Newbie (0 - 499 posts)
 
Posts: n/a  
Time spent in forums:
Reputation Power:
Machine Learning in Optimization ?

Hi Bjorn,

thank you for your answer.

You may want to look at GCC ICI [1] (= Interactive Compilation
Interface). Basically, GCC ICI is an initiative to open up the
internal heuristics of GCC and allow an external tool to make the
decisions for GCC whenever it has to decide on whether or not to apply
a transformation or to choose a transformation parameter. So, GCC ICI
is a GCC framework with handles to an external decision making tool
which may or may not be based on machine learning.

I will have a look at the software.

In terms of machine learning packages WEKA [2] may be useful to
you. As WEKA is written in Java you may need to develop your own C++
wrappers, though. Some information on bridging WEKA and .NET can be
found in [3].


I'm still interested in 2 other issue:
1) how many lines of code (or benchmarks) were required in your
paper to achieve good results for machine learning, i.e. how much
code had to be passed in the training phase before the learned
data base provided reliable results for the classification of
new benchmarks?
2) The selection of static features that describe a particular C
construct (as is used in your paper to learn "good" optimizations for
different classes of programs) seems to be a crucial part. Can you
give me some advices how such "good" features for learning can
be found? Is it promising to specify as many static features of
the C programs in the training phase as possible (intuitively more
features should allow one to describe a program more precisely) or
might a too large set of features have a negative impact of machine
learning aiming at pattern recognition?

Best regards,
Stephan

Reply With Quote
Reply

Viewing: Web Development Archives FAQs Compilers > Machine Learning in Optimization ?


Thread Tools  Search this Thread 
Search this Thread:

Advanced Search
Display Modes  Rate This Thread 
Rate This Thread:


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are Off
[IMG] code is On
HTML code is Off
View Your Warnings | New Posts | Latest Threads | Shoutbox
Forum Jump


Forums: » Register « |  User CP |  Games |  Calendar |  Members |  FAQs |  Sitemap |  Support | 
  
 





© 2003-2008 by Developer Shed. All rights reserved. DS Cluster 1 hosted by Hostway