[squeak-dev] Loading my monticello package - very slow at end; how to diagnose?

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

[squeak-dev] Loading my monticello package - very slow at end; how to diagnose?

Sophie424
When I load my monticello package into Damien's 3.10 web image, the progress
bar moves really quickly to about the 99% mark, then pauses there for a good
15 seconds. Is there a way to figure out (or guess) what it is doing, and if
something in my code can be changed to improve it?

Thanks!




Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Loading my monticello package - very slow at end; how to diagnose?

Damien Cassou-3
On Thu, Dec 4, 2008 at 3:12 AM, Sophie (itsme213) <[hidden email]> wrote:
> When I load my monticello package into Damien's 3.10 web image, the progress
> bar moves really quickly to about the 99% mark, then pauses there for a good
> 15 seconds. Is there a way to figure out (or guess) what it is doing, and if
> something in my code can be changed to improve it?

To you have some class-side #initialize methods?


--
Damien Cassou
http://damiencassou.seasidehosting.st

Reply | Threaded
Open this post in threaded view
|

[squeak-dev] Re: Loading my monticello package - very slow at end; how to diagnose?

Sophie424
"Damien Cassou" <[hidden email]> wrote in message
news:[hidden email]...

> On Thu, Dec 4, 2008 at 3:12 AM, Sophie (itsme213) <[hidden email]>
> wrote:
>> When I load my monticello package into Damien's 3.10 web image, the
>> progress
>> bar moves really quickly to about the 99% mark, then pauses there for a
>> good
>> 15 seconds. Is there a way to figure out (or guess) what it is doing, and
>> if
>> something in my code can be changed to improve it?
>
> To you have some class-side #initialize methods?

Yes, but they are completely trivial - a few #registerAsApplication for
seaside.

Sophie




Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: Loading my monticello package - very slow at end; how to diagnose?

Bert Freudenberg

On 04.12.2008, at 16:21, Sophie (itsme213) wrote:

> "Damien Cassou" <[hidden email]> wrote in message
> news:[hidden email]...
>> On Thu, Dec 4, 2008 at 3:12 AM, Sophie (itsme213) <[hidden email]
>> >
>> wrote:
>>> When I load my monticello package into Damien's 3.10 web image, the
>>> progress
>>> bar moves really quickly to about the 99% mark, then pauses there  
>>> for a
>>> good
>>> 15 seconds. Is there a way to figure out (or guess) what it is  
>>> doing, and
>>> if
>>> something in my code can be changed to improve it?
>>
>> To you have some class-side #initialize methods?
>
> Yes, but they are completely trivial - a few #registerAsApplication  
> for
> seaside.


Press Alt-. to see what it's doing.

- Bert -



Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: Loading my monticello package - very slow at end; how to diagnose?

keith1y

>
>> "Damien Cassou" <[hidden email]> wrote in message
>> news:[hidden email]...
>>> On Thu, Dec 4, 2008 at 3:12 AM, Sophie (itsme213)
>>> <[hidden email]>
>>> wrote:
>>>> When I load my monticello package into Damien's 3.10 web image, the
>>>> progress
>>>> bar moves really quickly to about the 99% mark, then pauses there
>>>> for a
>>>> good
>>>> 15 seconds. Is there a way to figure out (or guess) what it is
>>>> doing, and
>>>> if
>>>> something in my code can be changed to improve it?
>>>
>>> To you have some class-side #initialize methods?
>>
>> Yes, but they are completely trivial - a few #registerAsApplication for
>> seaside.
>
>
> Press Alt-. to see what it's doing.
>
> - Bert -
It really depends upon which Monticello you are using.

If it is 3.10 then I think it performs the final load in a tight loop,
avoiding updating the UI (and hence the progress bar) as much as possible.

Keith

Reply | Threaded
Open this post in threaded view
|

[squeak-dev] Re: Re: Loading my monticello package - very slow at end; how to diagnose?

Sophie424
In reply to this post by Bert Freudenberg
"Bert Freudenberg" <[hidden email]> wrote

>>> On Thu, Dec 4, 2008 at 3:12 AM, Sophie (itsme213) wrote:
>>>> When I load my monticello package into Damien's 3.10 web image, the
>>>> progress
>>>> bar moves really quickly to about the 99% mark, then pauses there  for
>>>> a
>>>> good
>>>> 15 seconds.

>
> Press Alt-. to see what it's doing.
>

It is still showing the "Loading" progress bar, has not yet reached the
"Initializing" progress bar.

A series of Alt-. suggests that that final "Loading" pause is spent in this
kind of stack:

MCPackageLoader>>basicLoad
 MethodAddition>>notifyObservers
  SystemChangeNotifier>>methodAdded:selector:inProtocol:..
   ...
    PackageInfo>>includesClass:
     SystemOrganizer>>listAtCategoryNamed:
      Array>>indexOf:ifAbsent:

Perhaps a lot of category searching within a (UI-motivated?) notifyObservers
? Hmmm. Not likely something my code causes.




Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: Re: Loading my monticello package - very slow at end; how to diagnose?

keith1y
Sophie (itsme213) wrote:

> "Bert Freudenberg" <[hidden email]> wrote
>
>  
>>>> On Thu, Dec 4, 2008 at 3:12 AM, Sophie (itsme213) wrote:
>>>>        
>>>>> When I load my monticello package into Damien's 3.10 web image, the
>>>>> progress
>>>>> bar moves really quickly to about the 99% mark, then pauses there  for
>>>>> a
>>>>> good
>>>>> 15 seconds.
>>>>>          
>
>  
>> Press Alt-. to see what it's doing.
>>
>>    
>
> It is still showing the "Loading" progress bar, has not yet reached the
> "Initializing" progress bar.
>
> A series of Alt-. suggests that that final "Loading" pause is spent in this
> kind of stack:
>
> MCPackageLoader>>basicLoad
>  MethodAddition>>notifyObservers
>   SystemChangeNotifier>>methodAdded:selector:inProtocol:..
>    ...
>     PackageInfo>>includesClass:
>      SystemOrganizer>>listAtCategoryNamed:
>       Array>>indexOf:ifAbsent:
>
> Perhaps a lot of category searching within a (UI-motivated?) notifyObservers
> ? Hmmm. Not likely something my code causes.
>  
I wouldnt worry about it... more recent versions of Monticello offer
significant speed ups.

Monticello15 and Monticello16 are available from Universes

Keith


Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Re: Re: Loading my monticello package - very slow at end; how to diagnose?

Bert Freudenberg
In reply to this post by Sophie424

On 04.12.2008, at 17:22, Sophie (itsme213) wrote:

> "Bert Freudenberg" <[hidden email]> wrote
>
>>>> On Thu, Dec 4, 2008 at 3:12 AM, Sophie (itsme213) wrote:
>>>>> When I load my monticello package into Damien's 3.10 web image,  
>>>>> the
>>>>> progress
>>>>> bar moves really quickly to about the 99% mark, then pauses  
>>>>> there  for
>>>>> a
>>>>> good
>>>>> 15 seconds.
>
>>
>> Press Alt-. to see what it's doing.
>>
>
> It is still showing the "Loading" progress bar, has not yet reached  
> the
> "Initializing" progress bar.
>
> A series of Alt-. suggests that that final "Loading" pause is spent  
> in this
> kind of stack:
>
> MCPackageLoader>>basicLoad
> MethodAddition>>notifyObservers
>  SystemChangeNotifier>>methodAdded:selector:inProtocol:..
>   ...
>    PackageInfo>>includesClass:
>     SystemOrganizer>>listAtCategoryNamed:
>      Array>>indexOf:ifAbsent:
>
> Perhaps a lot of category searching within a (UI-motivated?)  
> notifyObservers
> ? Hmmm. Not likely something my code causes.


Unlikely indeed.

If you wanted to get to the root of this you would have to add a bit  
of profiling code, trying to isolate the part that takes so much time.

It's amazing what you can do with a bit of profiling.

- Bert -