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
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.