octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Possible GSoC Project: AOT "bytecode" compiler for octave


From: Lasse Schuirmann
Subject: Re: Possible GSoC Project: AOT "bytecode" compiler for octave
Date: Sat, 22 Feb 2014 15:19:54 +0100

Am 12.02.2014 16:11 schrieb "Lasse Schuirmann" <address@hidden>:
>
> On Wed, 2014-02-12 at 09:47 -0500, Jordi Gutiérrez Hermoso wrote:
> > On Wed, 2014-02-12 at 15:01 +0100, Lasse Schuirmann wrote:
> >
> > > I also have successfully serialized a tree_statement_list that
> > > contained a comment with some rather generic methods I wrote. I am
> > > relatively sure that this would work well with the JIT compiler
> > > since this is on the evaluation side only.
> > [snip]
> > > I would like to participate on the google summer of code with this project
> > > if you think that would be useful.
> >
> > This sounds useful. Can you show us your patches?
> >
> > - Jordi G. H.
> >
> >
>
> Of course. My general approach for serialization is hosted here in a git
> repository:
> https://bitbucket.org/sils1297/serialization-test
>
> A patch for octave is appended to this email. Please do not judge me by
> this code, it was meant to be an experiment.
>
> If you patch your version of octave with this patch, create a directory
> named "tmp" and execute octave in the parent directory of tmp, the
> version will save a serialized version of every statement to tmp/tmpA
> (B, C, ...). You will find an example execution below my signature.
>
> Serialization should work with comments (and nothing else). I did not
> test deserialization with octave yet.
>
> Greetings,
>
> Lasse Schuirmann
>
> Example:
> ~/prog/octave/build$ ./run-octave --no-gui
> octave:1> x=1 # a comment!
> tmp/tmpA
> x =  1
> octave:2> exit
> tmp/tmpB
>
> ~/prog/octave/build$ cd tmp
> ~/prog/octave/build/tmp$ hexdump -c tmpA
> 0000000 001 001  \0  \0  \0  \0  \0  \0  \0 001 377 377 377 377 377 377
> 0000010 377 377  \0  \0 001 001  \0  \0  \0 002  \0  \0  \0  \0 001 001
> 0000020  \0  \0  \0  \0  \0  \0  \0 003  \0  \0  \0  \f  \0  \0  \0  \0
> 0000030  \0  \0  \0       a       c   o   m   m   e   n   t   !  \n
> 0000

Hello,

since this "sounds useful" I will start doing the paperwork for the GSoC soon. If there is anything else that is not provided here please ask. A list of my bugfixes and other related work is at bottom. I appreciate any feedback to any of my code!

I also would like to know if there is anyone willing to mentor this project I proposed. If you need code samples, take a look on the bitbucket repository (or ask for more).

On the IRC my nickname is sils1296. I am currently a little busy so I cannot hang around every day.

Greetings,

Lasse Schuirmann

--- my work with octave until now ---

I submitted a few patches and worked especially on getting octave compiled with 64 bit indexing enabled:
https://savannah.gnu.org/bugs/?41163
https://savannah.gnu.org/bugs/?41145

I also provided another unrelated patch here:
https://savannah.gnu.org/bugs/?32885

As I read through the code to learn about the interpreter and evaluator I worked out this patch:
https://savannah.gnu.org/patch/index.php?8267

--- octave unrelated work related to this project ---

I am currently working on a performance optimization project in C++ on an embedded system. I hope I will get more experience in writing efficient code this way.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]