Fwd: Re: Re: MooseDefaultState

Previous Topic Next Topic
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Fwd: Re: Re: MooseDefaultState


I forward because I cliked "answer" instead of "answer all"…

-------- Message transféré --------
Sujet : Re: [Moose-dev] Re: MooseDefaultState
Date : Sat, 23 Sep 2017 20:30:14 +0200
De : Cyril Ferlicot D. <[hidden email]>
Pour : Stéphane Ducasse <[hidden email]>

Le 23/09/2017 à 20:12, Stéphane Ducasse a écrit :
> cyril can you explain to me what is for queries?
> Did you check if there are smalldictionary?

In the MooseDefaultState there is 4 ivar.

entity : the entity using this state
attributes : a way to add dynamically properties to save. This
dictionary is never reset.
properties and queries : those two are caches that can be reset. They
save the result of long operations as #numberOfLinesOfCodes

But I do not know why we have two dictionaries instead of one and I
would like to know.
>> Image without model : 263Mo
> Just loading the code takes that amount of space? 
> Are you sure that we use all that?

This is what my Window's memory manager tell me. I'm sure we can remove
a lot of thing but I was waiting more progresses on the Bootstrap to
explore the possibility to reduce image size.

>> Image with model and default synectique caches : 650Mo
> What is a synectique caches?

After loading a model we launch the build of some caches in order to get
usable interfaces directly. Else some browsers can take 30sec to first
load then they take less than 1sec. To avoid this we generate some of
those caches at loading.

>> Image without model : 263Mo
>> Image with model : 589Mo
> so this is 6 mo so 1%? 

The most interesting part is when we already use caches. The grow in
memory of the caches is reduced.

> Yes I would like to know. 
> Do you know if the keys of “queries” clash with the keys of properties?

I tried in the application I am working on and there is none in this model.

Here is the script:

states := MooseModel allSubInstances first entities collect: #privateState.

MooseDefaultState compile: 'allPropertiesKeys
        ^ propertyCache keys'.
MooseDefaultState compile: 'allQueriesKeys
        ^ queryCache keys'.

properties := states flatCollectAsSet: #allPropertiesKeys.
queries := states flatCollectAsSet: #allQueriesKeys.
properties size = (properties \ queries) size. "true"

> --------------------------------------------
> Stéphane Ducasse
> http://stephane.ducasse.free.fr
> http://www.synectique.eu / http://www.pharo.org 
> 03 59 35 87 52
> Assistant: Julie Jonas 
> FAX 03 59 57 78 50
> TEL 03 59 35 86 16
> S. Ducasse - Inria
> 40, avenue Halley, 
> Parc Scientifique de la Haute Borne, Bât.A, Park Plaza
> Villeneuve d'Ascq 59650
> France
> _______________________________________________
> Moose-dev mailing list
> [hidden email]
> https://www.list.inf.unibe.ch/listinfo/moose-dev

Cyril Ferlicot

2 rue Jacques Prévert 01,
59650 Villeneuve d'ascq France

Moose-dev mailing list
[hidden email]

signature.asc (836 bytes) Download Attachment