On Sat, 15 Feb 2014, Alejandro Infante wrote:

Well, I tried today using that to release some memory used by Roassal. Let's 
say all the instances of ROElement. So I executed the following code:

ROElement allInstances do: [:el | el becomeForward: nil ].

The next second the image crashed. Then I thought that was because the 
visualization was open. So I did another little experiment, closed the
visualization, and then run the following code:

ROElement allInstances do: [:el | el becomeForward: nil ].
"Everithing ok for now"
Smalltalk garbageCollect.

Again, same result, the image crashed. Also instead of doing garbage collect, I 
tried open the browser, but the image crashed just few seconds
later. 

It's a sign of a bug either in the VM, or the finalization mechanism (if these objects are subject to finalization), or Roassal itself. You better examine the crash dumps.


At least (in my opinion), building a reliable tool that can crash your image 
easily is not 1 hour work, nor 1 week work.

Not crashing the VM is not part of the GSoC project description, and there's a good reason for that. No tool can save you from a VM crash. You can avoid some cases, but not all. Using a dereferencer means taking the easy but risky way of getting rid of unnecessary objects.


Levente


Cheers,
Alejandro



2014-02-15 16:34 GMT-08:00 Levente Uzonyi <le...@elte.hu>:
      On Sat, 15 Feb 2014, Andres Valloud wrote:

            FYI writing any decent production quality tool takes way more than 
1 hour. IME writing *two* reference finders, it takes a
            bunch of effort to make them work correctly, reliably, quickly, and 
in a useful way.


I would agree with you if the building blocks weren't already in the image.

Q: Which objects point to myObject?
A: myObject inboundPointers

Q: How can I dereference myObject?
A: myObject becomeForward: nil

Do you think it takes a summer to combine and extend these two lines into a 
tool?


Levente


      On 2/15/14 6:31 , Alexandre Bergel wrote:
            Well... I do no think so. There is a fair amount of work regarding 
memory profiling. Dereferencing is probably only
            a small piece off.
            Anyway, we will have time to refine the project description

            Alexandre

                  Le 14-02-2014 à 18:17, Levente Uzonyi <le...@elte.hu> a écrit 
:

                        On Fri, 14 Feb 2014, Alexandre Bergel wrote:

                        Hi Paolo,

                        I can mentor the project below:
                              Project idea

                              Name: Instance Derreferencer for Pharo
                              Skill level: Intermediate
                              Possible Mentors:
                              Name of the Student: Alejandro Infante

                              Description:
                              A problem with image based environment is, when 
you detect a memory leak is
                              removing those objects from the system. This tool 
would provide a handy UI to
                              inspect the current instances of the classes that 
we think they have a memory
                              leak and, in case there are objects that are not 
being garbage collected, offer
                              to the user a Derreference button. This is going 
to iterate over all the objects
                              that have a reference to my object and remove 
that reference, finally enabling
                              the Garbage Collector to get rid of the leak.


                  It shouldn't take more than an hour to implement such tool.


                  Levente


                        Cheers,
                        Alexandre





                              2014-02-14 5:08 GMT-08:00 Nicolas Petton 
<petton.nico...@gmail.com>:

                              Paolo Bonzini writes:

                                    Il 11/02/2014 10:42, Damien Cassou ha 
scritto:
                                          Hi fellow Pharo hackers,

                                                  ESUG, the European Smalltalk 
User Group, is
                                          applying for this
                                                  year's Google Summer of Code. 
 As you probably
                                          know, the Summer
                                                  of Code provides the 
opportunity to fund
                                          students to work during
                                                  the summer on Pharo.  Please 
reply to this
                                                  email (be sure to use "Reply to 
all") if you
                                          have ideas you
                                                  would like to propose.

                                                  Please include a summary of 
the project and
                                          links to web pages
                                                  that can help prospective 
students to write
                                          their application.
                                                  Please also include the 
following information:

                                                  - if applicable, other 
dialects that you would
                                          be willing to
                                                    mentor this project for

                                                  - the skill level

                                                  - name of the mentor(s), 
email addresses, and
                                          possibly any IRC
                                                    network/channel/nickname 
where they can be
                                          found.

                                                  Thanks for contributing to 
ESUG's Summer of Code
                                          application!


                                    Just a note that I haven't yet processed 
this thread, but our ideas
                                    page
                                    is already looking pretty well (and Pharo 
section is big) so I'll
                                    probably do it in the weekend or next 
Monday.


                              I can do it if you want.

                              Cheers,
                              Nico


                        --
                        _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
                        Alexandre Bergel  http://www.bergel.eu
                        ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.






Reply via email to