On Wed, Dec 8, 2010 at 9:05 PM, Alexandre Bergel <[email protected]>wrote:

> >> It look cool!
> >> Is this a better ImageSegment?
> >
> > there is no VM code implied and you do not get all the problems of
> imageSegment.
> > You should ask is it better than SmartRefStreams.
> > Yes
> > Now the code has not been optimized
>
> Ah ok! How to deal with stubs is the difference with ImageSegment then.
>
>
The difference is that in Fuel there is no managment for "shared objects".
Fuel is not for swapping (there are no stubs/proxies and becomes), and the
idea is that you write on a file, ALL (not only those objects that are ONLY
accessible by the roots, like in ImageSegment) the objects reachable from
user defined roots.

Fuel is similar to ReferenceStream and subclasses, a XML serializer, or any
serializers, etc...but MOSTLY, to Parcels. It is very similar to VisualWorks
parcel.

Another important thing is that it is binary. The idea is that maybe in a
future we have a Monticello that doesn't need a mcz (code) + Compiler, but
instead, just load binary code (fuel files). This would be muuuch faster
that current Monticello, and even more, for minimal images, we wouldn't need
a Compiler.
Finally, Fuel is designed (like Parcels) to be very fast at loading time :)

Cheers

Mariano




> It looks exciting!
>
> Alexandre
>
>
> >
> >>
> >> Alexandre
> >>
> >>
> >> On 8 Dec 2010, at 13:50, Martin Dias wrote:
> >>
> >>> Hi all
> >>>
> >>> Last months I and Tristan have been working on Fuel project, an object
> >>> binary serialization tool. The idea is that objects are much more
> >>> times loaded than stored, therefore it is worth to spend time while
> >>> storing in order to have faster loading and user experience. We
> >>> present an implementation of a pickle format that is based on
> >>> clustering similar objects.
> >>>
> >>> There is a summary of the project below, but more complete information
> >>> is available here: http://rmod.lille.inria.fr/web/pier/software/Fuel
> >>>
> >>> The implementation still needs a lot of work to be really useful,
> >>> optimizations should be done, but we'll be glad to get feedback of the
> >>> community.
> >>>
> >>>
> >>> = Pickle format =
> >>>
> >>> The pickle format and the serialization algorithm main idea, is
> >>> explained in this slides:
> >>>
> >>> http://www.slideshare.net/tinchodias/fuel-serialization-in-an-example
> >>>
> >>>
> >>> = Current features =
> >>>
> >>> - Class shape changing (when a variable has been added, or removed, or
> >>> its index changed)
> >>> - Serialize most of the basic objects.
> >>> - Serialize (almost) any CompiledMethod
> >>> - Detection of global or class variables
> >>> - Support for cyclic object graphs
> >>> - Tests
> >>>
> >>>
> >>> = Next steps =
> >>>
> >>> - Improve version checking.
> >>> - Optimize performance.
> >>> - Serialize more kinds of objects:
> >>> -- Class with its complete description.
> >>> -- Method contexts
> >>> -- Active block closures
> >>> -- Continuation
> >>> - Some improvements for the user:
> >>> -- pre and post actions to be executed.
> >>> -- easily say 'this object is singleton'.
> >>> - Partial loading of a stored graph.
> >>> - Fast statistics/brief info extraction of a stored graph.
> >>> - ConfigurationOfFuel.
> >>> - Be able to deploy materialization behavior only (independent from
> >>> the serialization behavior)
> >>>
> >>>
> >>> = Download =
> >>>
> >>> In a Pharo 1.1 or 1.1.1 evaluate:
> >>>
> >>> Gofer new
> >>>     squeaksource: 'Fuel';
> >>>     version: 'Fuel-MartinDias.74';
> >>>     version: 'FuelBenchmarks-MartinDias.4';
> >>>     load.
> >>>
> >>>
> >>> = Benchmarks =
> >>>
> >>> You can run benchmarks executing this line (results in Transcript):
> >>>
> >>> FLBenchmarks newBasic run.
> >>>
> >>>
> >>> Thank you!
> >>> Martin Dias
> >>>
> >>
> >> --
> >> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> >> Alexandre Bergel  http://www.bergel.eu
> >> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
> >>
> >>
> >>
> >>
> >>
> >>
> >
> >
>
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>
>
>
>

Reply via email to