Hi Max,

> Um... I should be able to get a visualisation by running somthing like this 
> right (I only installed it, didn't subclass anything)?
> 
> MemoryProfiler
>       viewProfiling: [ FSDiskFilesystem current working / foo ].
> 
> I get a window but there's nothing in it...

The piece of code you want to profile needs is executed twice, and it needs "to 
be time consuming" (~ 1 second).
For example, try:

        MemoryProfiler
                viewProfiling: [ 
                        | view |

                        view := MOViewRenderer new.
                        view nodes: (1 to: 5000).
                        view root applyLayout ]

or 

        MemoryProfiler
                viewProfiling: [ (1 to: 2) collect: [ :i | 
ConfigurationOfMetacello project currentVersion ] ]

to get a nice picture

> Also, is selecting the expression in the block above, right clicking and 
> selecting "memory profile it" equivalent to sending #viewProfiling: ?

yes

> Reading your paper I get the idea that this should work, when looking at the 
> instructions on the moose site it rather seems that I need to subclass 
> MemoryProfiler to actually profile anything.

No need to subclass.

Cheers,
Alexandre

> 
> 
> 
> On 09.11.2010, at 15:02, Alexandre Bergel wrote:
> 
>> Ok, but please, provide feedback.
>> 
>> Alexandre
>> 
>> 
>> On 9 Nov 2010, at 10:40, Max Leske wrote:
>> 
>>> Sounds like what I just needed! I'll try it out.
>>> 
>>> Cheers,
>>> Max
>>> 
>>> 
>>> On 09.11.2010, at 12:42, Alexandre Bergel wrote:
>>> 
>>>> Hi Guido,
>>>> 
>>>> We wrote a profiler to keep track of memory consumption. 
>>>> 
>>>> http://bergel.eu/download/papers/Berg10g-MemoryProfiling.pdf
>>>> 
>>>> It will be presented at Smalltalks next week.
>>>> 
>>>> Cheers,
>>>> Alexandre
>>>> 
>>>> On 8 Nov 2010, at 23:47, Guido Stepken wrote:
>>>> 
>>>>> E.g.: Three different solutions for a Euler problem:
>>>>> 
>>>>> (1 to: 999) inject: 0 into: [:sum :i | (i \\ 3 = 0) | (i \\ 5 = 0)
>>>>>           ifTrue: [sum + i]
>>>>>           ifFalse: [sum]]
>>>>> 
>>>>> 
>>>>> (1 to: 999) detectSum: [:i | (i \\ 3 = 0) | (i \\ 5 = 0) ifTrue: [i] 
>>>>> ifFalse: [0]]
>>>>> 
>>>>> (1 to: 999) detectSum: [:i | i * (#(0 0 1 0 1 1 0 0 1 1 0 1 0 0 1) 
>>>>> atWrap: i)]
>>>>> 
>>>>> How do i measure the exact memory footprint of each solution?
>>>>> 
>>>>> Pharo claims having reduced memory footprint at many places. Can that be 
>>>>> proofed, e.g. with one comparable demo app, once run in old squeak, once 
>>>>> in Pharo 1.1/1.2?
>>>>> 
>>>>> And no, MessageTally spyOn: does not do right!
>>>>> 
>>>>> Tnx in advance, Guido Stepken
>>>>> 
>>>>> 
>>>> 
>>>> -- 
>>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>>> Alexandre Bergel  http://www.bergel.eu
>>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>> 
>>> 
>> 
>> -- 
>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>> Alexandre Bergel  http://www.bergel.eu
>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>> 
>> 
>> 
>> 
>> 
>> 
> 
> 

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






Reply via email to