problem - very slow "snapshotting methods"

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

problem - very slow "snapshotting methods"

cbeler
Hi all...

I just format my PC and now with squeak, I have problem when l encounter
the step "snapshotting methods" (when loading a package for instance...).

Do you have an idea where it may come from, I'm lost ?

Thanks for all

Cédrick

7 April 2007 10:41:34 am

VM: Win32 - a SmalltalkImage
Image: Squeak3.9 [latest update: #7067]

SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir C:\Documents and
Settings\Administrateur\Bureau\DEV\Seaside\seaside2.8
Trusted Dir C:\Documents and
Settings\Administrateur\Bureau\DEV\Seaside\seaside2.8\Administrateur
Untrusted Dir C:\My Squeak\Administrateur

MultiByteFileStream(StandardFileStream)>>register
        Receiver: MultiByteFileStream: nil
        Arguments and temporary variables:

        Receiver's instance variables:


MultiByteFileStream(StandardFileStream)>>open:forWrite:
        Receiver: MultiByteFileStream: nil
        Arguments and temporary variables:
                fileName: 'C:\Documents and
Settings\Administrateur\Bureau\DEV\Seaside\seaside2...etc...
                writeMode: false
                f: 'C:\Documents and
Settings\Administrateur\Bureau\DEV\Seaside\seaside2.8\seas...etc...
                id: a ByteArray(120 1 0 0 208 27 102 4 0 0 0 0 0 0 0 0 155 93 61 0 0
0 0 0 0 0 ...etc...
        Receiver's instance variables:


MultiByteFileStream>>open:forWrite:
        Receiver: MultiByteFileStream: nil
        Arguments and temporary variables:
                fileName: 'C:\Documents and
Settings\Administrateur\Bureau\DEV\Seaside\seaside2...etc...
                writeMode: false
                result: nil
        Receiver's instance variables:


MultiByteFileStream class(StandardFileStream class)>>readOnlyFileNamed:
        Receiver: MultiByteFileStream
        Arguments and temporary variables:
                fileName: 'C:\Documents and
Settings\Administrateur\Bureau\DEV\Seaside\seaside2...etc...
                fullName: 'C:\Documents and
Settings\Administrateur\Bureau\DEV\Seaside\seaside2...etc...
                f: nil
        Receiver's instance variables:
                superclass: StandardFileStream
                methodDict: a MethodDictionary(#accepts:->a CompiledMethod (238)
#ascii->a Comp...etc...
                format: 152
                instanceVariables: #('converter' 'lineEndConvention'
'wantsLineEndConversion')
                organization: ('accessing' ascii binary converter converter:
fileInEncodingName...etc...
                subclasses: nil
                name: #MultiByteFileStream
                classPool: a Dictionary(#Cr->Character cr #CrLf->'

' #Lf->Character lf #LineEn...etc...
                sharedPools: nil
                environment: a SystemDictionary(lots of globals)
                category: #'Multilingual-TextConversion'
                traitComposition: nil
                localSelectors: nil


--- The full stack ---
MultiByteFileStream(StandardFileStream)>>register
MultiByteFileStream(StandardFileStream)>>open:forWrite:
MultiByteFileStream>>open:forWrite:
MultiByteFileStream class(StandardFileStream class)>>readOnlyFileNamed:
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MultiByteFileStream(StandardFileStream)>>readOnlyCopy
[] in CompiledMethod>>timeStamp {[file readOnlyCopy]}
BlockContext>>on:do:
CompiledMethod>>timeStamp
MethodReference>>timeStamp
MCMethodDefinition class>>forMethodReference:
MethodReference>>asMethodDefinition
[] in MCPackage>>snapshot {[:ea | definitions add: ea
asMethodDefinition]}
[] in Array(SequenceableCollection)>>do:displayingProgress: {[:each :i |
 bar value: i.  aBlock value: each]}
Array(SequenceableCollection)>>withIndexDo:
[] in Array(SequenceableCollection)>>do:displayingProgress: {[:bar |
self   withIndexDo: [:each :i |     bar value: i.    aBlock value:
e...]}
[] in ProgressInitiationException>>defaultMorphicAction {[result :=
workBlock value: progress]}
BlockContext>>ensure:
ProgressInitiationException>>defaultMorphicAction
ProgressInitiationException>>defaultAction
UndefinedObject>>handleSignal:
MethodContext(ContextPart)>>handleSignal:
ProgressInitiationException(Exception)>>signal
ProgressInitiationException>>display:at:from:to:during:
ProgressInitiationException class>>display:at:from:to:during:
ByteString(String)>>displayProgressAt:from:to:during:
Array(SequenceableCollection)>>do:displayingProgress:
MCPackage>>snapshot
MCPackageLoader>>updatePackage:withSnapshot:
[] in MCVersionLoader>>load {[:ea | ea canOptimizeLoading   ifTrue: [ea
patch applyTo: loader]   ifFalse:...]}
OrderedCollection>>do:
MCVersionLoader>>load
MCVersionLoader class>>loadVersion:
MCVersion>>load
[] in MCFileRepositoryInspector(MCVersionInspector)>>load {[self version
load]}
BlockContext>>ensure:
CursorWithMask(Cursor)>>showWhile:
MCFileRepositoryInspector(MCVersionInspector)>>load
MCFileRepositoryInspector>>load
PluggableButtonMorphPlus(PluggableButtonMorph)>>performAction
PluggableButtonMorphPlus>>performAction
[] in PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp: {[:m | (m
containsPoint: evt cursorPoint)   ifTrue: [m performAction]]}
...etc...



Reply | Threaded
Open this post in threaded view
|

Re: problem - very slow "snapshotting methods"

Damien Cassou-3
Hi Cédrick,

do you use a base image or a squeak-dev one ? If squeak-dev, can you
try to upgrade packages through the universe browser, deactivate
dynamic protocols (preference browser) and deactivate
AutomaticMethodCategorization (through the #uninstall method or
something like this)?

2007/4/7, Cédrick Béler <[hidden email]>:

> Hi all...
>
> I just format my PC and now with squeak, I have problem when l encounter
> the step "snapshotting methods" (when loading a package for instance...).
>
> Do you have an idea where it may come from, I'm lost ?
>
> Thanks for all
>
> Cédrick
>
> 7 April 2007 10:41:34 am
>
> VM: Win32 - a SmalltalkImage
> Image: Squeak3.9 [latest update: #7067]
>
> SecurityManager state:
> Restricted: false
> FileAccess: true
> SocketAccess: true
> Working Dir C:\Documents and
> Settings\Administrateur\Bureau\DEV\Seaside\seaside2.8
> Trusted Dir C:\Documents and
> Settings\Administrateur\Bureau\DEV\Seaside\seaside2.8\Administrateur
> Untrusted Dir C:\My Squeak\Administrateur
>
> MultiByteFileStream(StandardFileStream)>>register
>         Receiver: MultiByteFileStream: nil
>         Arguments and temporary variables:
>
>         Receiver's instance variables:
>
>
> MultiByteFileStream(StandardFileStream)>>open:forWrite:
>         Receiver: MultiByteFileStream: nil
>         Arguments and temporary variables:
>                 fileName:       'C:\Documents and
> Settings\Administrateur\Bureau\DEV\Seaside\seaside2...etc...
>                 writeMode:      false
>                 f:      'C:\Documents and
> Settings\Administrateur\Bureau\DEV\Seaside\seaside2.8\seas...etc...
>                 id:     a ByteArray(120 1 0 0 208 27 102 4 0 0 0 0 0 0 0 0 155 93 61 0 0
> 0 0 0 0 0 ...etc...
>         Receiver's instance variables:
>
>
> MultiByteFileStream>>open:forWrite:
>         Receiver: MultiByteFileStream: nil
>         Arguments and temporary variables:
>                 fileName:       'C:\Documents and
> Settings\Administrateur\Bureau\DEV\Seaside\seaside2...etc...
>                 writeMode:      false
>                 result:         nil
>         Receiver's instance variables:
>
>
> MultiByteFileStream class(StandardFileStream class)>>readOnlyFileNamed:
>         Receiver: MultiByteFileStream
>         Arguments and temporary variables:
>                 fileName:       'C:\Documents and
> Settings\Administrateur\Bureau\DEV\Seaside\seaside2...etc...
>                 fullName:       'C:\Documents and
> Settings\Administrateur\Bureau\DEV\Seaside\seaside2...etc...
>                 f:      nil
>         Receiver's instance variables:
>                 superclass:     StandardFileStream
>                 methodDict:     a MethodDictionary(#accepts:->a CompiledMethod (238)
> #ascii->a Comp...etc...
>                 format:         152
>                 instanceVariables:      #('converter' 'lineEndConvention'
> 'wantsLineEndConversion')
>                 organization:   ('accessing' ascii binary converter converter:
> fileInEncodingName...etc...
>                 subclasses:     nil
>                 name:   #MultiByteFileStream
>                 classPool:      a Dictionary(#Cr->Character cr #CrLf->'
>
> ' #Lf->Character lf #LineEn...etc...
>                 sharedPools:    nil
>                 environment:    a SystemDictionary(lots of globals)
>                 category:       #'Multilingual-TextConversion'
>                 traitComposition:       nil
>                 localSelectors:         nil
>
>
> --- The full stack ---
> MultiByteFileStream(StandardFileStream)>>register
> MultiByteFileStream(StandardFileStream)>>open:forWrite:
> MultiByteFileStream>>open:forWrite:
> MultiByteFileStream class(StandardFileStream class)>>readOnlyFileNamed:
>  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> MultiByteFileStream(StandardFileStream)>>readOnlyCopy
> [] in CompiledMethod>>timeStamp {[file readOnlyCopy]}
> BlockContext>>on:do:
> CompiledMethod>>timeStamp
> MethodReference>>timeStamp
> MCMethodDefinition class>>forMethodReference:
> MethodReference>>asMethodDefinition
> [] in MCPackage>>snapshot {[:ea | definitions add: ea
> asMethodDefinition]}
> [] in Array(SequenceableCollection)>>do:displayingProgress: {[:each :i |
>  bar value: i.  aBlock value: each]}
> Array(SequenceableCollection)>>withIndexDo:
> [] in Array(SequenceableCollection)>>do:displayingProgress: {[:bar |
> self   withIndexDo: [:each :i |     bar value: i.    aBlock value:
> e...]}
> [] in ProgressInitiationException>>defaultMorphicAction {[result :=
> workBlock value: progress]}
> BlockContext>>ensure:
> ProgressInitiationException>>defaultMorphicAction
> ProgressInitiationException>>defaultAction
> UndefinedObject>>handleSignal:
> MethodContext(ContextPart)>>handleSignal:
> ProgressInitiationException(Exception)>>signal
> ProgressInitiationException>>display:at:from:to:during:
> ProgressInitiationException class>>display:at:from:to:during:
> ByteString(String)>>displayProgressAt:from:to:during:
> Array(SequenceableCollection)>>do:displayingProgress:
> MCPackage>>snapshot
> MCPackageLoader>>updatePackage:withSnapshot:
> [] in MCVersionLoader>>load {[:ea | ea canOptimizeLoading   ifTrue: [ea
> patch applyTo: loader]   ifFalse:...]}
> OrderedCollection>>do:
> MCVersionLoader>>load
> MCVersionLoader class>>loadVersion:
> MCVersion>>load
> [] in MCFileRepositoryInspector(MCVersionInspector)>>load {[self version
> load]}
> BlockContext>>ensure:
> CursorWithMask(Cursor)>>showWhile:
> MCFileRepositoryInspector(MCVersionInspector)>>load
> MCFileRepositoryInspector>>load
> PluggableButtonMorphPlus(PluggableButtonMorph)>>performAction
> PluggableButtonMorphPlus>>performAction
> [] in PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp: {[:m | (m
> containsPoint: evt cursorPoint)   ifTrue: [m performAction]]}
> ...etc...
>
>
>
>

--
Damien Cassou