Optimizing Compiler for the ICFP 09 contest's VM

View: New views
4 Messages — Rating Filter:   Alert me  

Optimizing Compiler for the ICFP 09 contest's VM

by Matthias Görgens-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

The byte code for the virtual machine of this years ICFP specified a
language with single assignment per simulation step.  Interestingly
most memory locations get overwritten each simulation step before they
are read.  That means, those locations don't have to be remember
between steps.  Also locations that never get overwritten (e.g.
location associated with Noops), are constant.  Thus the variables
state of the simulation is orders of magnitude smaller than the naive
2^16 * 32 bit + 1 bit.

I wrote a small program that analyses the dataflow of a byte code
program (and initial memory setup) for the VM.  After analyzing my
program emits Haskell code to run the given byte code.

If anyboby is interested, I can document my program and put it online
somewhere.  I also made pretty graphs of the dataflow with graphviz.
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@...
http://www.haskell.org/mailman/listinfo/haskell-cafe

Re: Optimizing Compiler for the ICFP 09 contest's VM

by minh thu :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

2009/7/4 Matthias Görgens <matthias.goergens@...>:

> The byte code for the virtual machine of this years ICFP specified a
> language with single assignment per simulation step.  Interestingly
> most memory locations get overwritten each simulation step before they
> are read.  That means, those locations don't have to be remember
> between steps.  Also locations that never get overwritten (e.g.
> location associated with Noops), are constant.  Thus the variables
> state of the simulation is orders of magnitude smaller than the naive
> 2^16 * 32 bit + 1 bit.
>
> I wrote a small program that analyses the dataflow of a byte code
> program (and initial memory setup) for the VM.  After analyzing my
> program emits Haskell code to run the given byte code.
>
> If anyboby is interested, I can document my program and put it online
> somewhere.  I also made pretty graphs of the dataflow with graphviz.

Hi Matthias,

it would be nice to blog a little post about what you found and the
pretty graphs :)

Thu
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@...
http://www.haskell.org/mailman/listinfo/haskell-cafe

Re: Optimizing Compiler for the ICFP 09 contest's VM

by Brettschneider, Matthias :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Same over here, i would love to read about your discoveries :)

-- Matthias

On Sat, Jul 04, 2009 at 11:12:30PM +0200, minh thu wrote:

> 2009/7/4 Matthias Görgens <matthias.goergens@...>:
> > If anyboby is interested, I can document my program and put it online
> > somewhere.  I also made pretty graphs of the dataflow with graphviz.
>
> Hi Matthias,
>
> it would be nice to blog a little post about what you found and the
> pretty graphs :)
>
> Thu
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe@...
> http://www.haskell.org/mailman/listinfo/haskell-cafe
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@...
http://www.haskell.org/mailman/listinfo/haskell-cafe

Re: Optimizing Compiler for the ICFP 09 contest's VM

by Matthias Görgens-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Since I have two readers now, I guess I'll have to start blogging. :o)
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@...
http://www.haskell.org/mailman/listinfo/haskell-cafe