alex this is good candidate for your profiler :) Stef
On Dec 8, 2010, at 9:05 PM, Alexandre Bergel 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. > > 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 > ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. > > > > > >
