Iso-Collections ....

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

Iso-Collections ....

stepken
Hi!

Frank sais:

"Traditionally Smalltalk has one Object-Memory which is
garbage-collected. This introduces overhead and complicates things in
multihreading programs. LSWVST introduces multiple Object-Spaces, in
which garbage collection can be controlled by the programmer. Every
thread has its own Standard-Object-Memory avoiding synchronisation problems.

Traditionally in Smalltalk every object is boxed. An object is a pointer
which has a reference to the class. This is necessary to dynamically
lookup the method during resolving a message-send. This makes programs
which operate on huge data-collections of the same type rather inefficient.

LSWVST introduces a new object-type - IsoCollections. Iso-Collections
stores type information of its elements only once."

Hmmm, opening a simple Array of 1.000.000 elements consumes 4 megabytes
in Pharo ...

regards, Guido Stepken

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Iso-Collections ....

Stéphane Ducasse
Hi guido

This is good to have people with kicking ass arguments. Thanks for that.
Now pay attention that you do not fall only in this category because  
after a while
this will get the inverse effect to what you want to achieve.
Because I imagine that you want us to be much better and we will try  
hard.

> Hi!
>
> Frank sais:
>
> "Traditionally Smalltalk has one Object-Memory which is
> garbage-collected. This introduces overhead and complicates things in
> multihreading programs. LSWVST introduces multiple Object-Spaces, in
> which garbage collection can be controlled by the programmer. Every
> thread has its own Standard-Object-Memory avoiding synchronisation  
> problems.

This is a nice idea. We got somebody here working on similar ideas.



> Traditionally in Smalltalk every object is boxed. An object is a  
> pointer
> which has a reference to the class. This is necessary to dynamically
> lookup the method during resolving a message-send. This makes programs
> which operate on huge data-collections of the same type rather  
> inefficient.

I have problem with this statement since on VW with a jit I imagine  
that lot of the lookup
gets cached already.

> LSWVST introduces a new object-type - IsoCollections. Iso-Collections
> stores type information of its elements only once."

Can I get LSWVST running on my machine a mac? Now I imgaine that if I  
could
I should not look at the code for license reasons.

I like the idea of DNG because I was sad to see Dolphin disappear. Now  
it does not
work on my machine since now more than 10 years.

>
>
> Hmmm, opening a simple Array of 1.000.000 elements consumes 4  
> megabytes
> in Pharo ...



I have a question: why don't you use LSWVST?
I would have used Dolphin long time ago if I could have. Now we will  
build something
open and free for the community.
And communities are important else Smalltalk would be just a nice idea  
in the museum.

Stef

>
>
> regards, Guido Stepken
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project