Difference between revisions of "Work Package 2"

From Superoptimization
Jump to: navigation, search
(Work package summary: Added start and end dates)
(Work package summary: Updated for interim report)
Line 7: Line 7:
 
| ''End date:''  || 25 July 2014
 
| ''End date:''  || 25 July 2014
 
|}
 
|}
 +
 +
Revised, since [[Work Package 1|work package 1]] has established that peephold optimization is not immediately relevant and has also indicated prototyping of key technologies is feasible.
  
 
=== Description ===
 
=== Description ===
  
Design a peephole optimization to integrate a superoptimizer into GCC and/or LLVM.
+
Implement prototypes for the superoptimization techniques identified in [[Work Package 1|work package 1]].
  
 
=== Deliverables ===
 
=== Deliverables ===
  
Engineering design of a peephole superoptimization integration. Stretch goal implement it.
+
Prototype implementations of superoptimization techniques.
  
 
=== Dependencies ===
 
=== Dependencies ===

Revision as of 10:05, 8 August 2014

Work package summary

Start date: 30 June 2014
End date: 25 July 2014

Revised, since work package 1 has established that peephold optimization is not immediately relevant and has also indicated prototyping of key technologies is feasible.

Description

Implement prototypes for the superoptimization techniques identified in work package 1.

Deliverables

Prototype implementations of superoptimization techniques.

Dependencies

Cannot finish before work package 1 is finished.

Approach

Design a peephole optimization to integrate a superoptimizer into GCC and/or LLVM.

Notes

A peephole optimizer is no longer relevant - not enough potential for gains.

Optimizing simultaneous sequences.

Peephole superoptimizer study could bruteforce multiple sequences simultenously, by hashing the test vectors
Unclear to see how this can be done for SMT based methods
Naively attempting to find multiple solutions at the same time will limit the 'branch pruning' of the solver – it will be unable to rule out large areas of the search space due to multiple divergant solutions
Could be the thing that limits the effectiveness of the SMT method
Possible solutions
Attempt to find multiple solutions to 'similar' sequences. Based on the assumption that the solutions will be similar. How to define a similarity metric?

Deliverables

The above notes, and notes on the Meetings page are the output of WP2, to be formulated into the project report (WP4)