[Pharo-project] out of memory - cog on windows

Alain_Rastoul alr.dev at free.fr
Thu Apr 21 23:39:35 CEST 2011


I thought he was able to start it on a Mac that's why I suggested to this on a Mac and see if memory consumption was reduced.
BTW I have rebuild a cog vm with 2Gb ram for MAX_MEMORY and it runs ok on my 1Gb netbook 

  "Mariano Martinez Peck" <marianopeck at gmail.com> a écrit dans le message de news: BANLkTikuk1jRV34=u2pzTFx5+2qWgjrbCQ at mail.gmail.com...
  Alain: as far as I understood, he cannot even start the image...so he won't be able to open a workspace and evaluate something. 

  Doru, if you can evaluate something in a workspace, you may also try SpaceTally new printSpaceAnalysis
  and then check the STspace.text  that is next to the image. That way you acn see if there are certain classes that have a lot of instances. 

  Can you evaluate "Smalltalk garbageCollect " and tell me the answer?  just curious....

  thanks

  mariano


  On Thu, Apr 21, 2011 at 10:36 PM, Alain_Rastoul <alr.dev at free.fr> wrote:

    Mmm, you are right, in old squeak versions, there was a parameter
    -memory: xx (xx inMB)
    but I don't know if it is still in use.

    BTW there must be some hanging references in memory and perhaps youd should
    do some PointerFinder on it.
    A very handy script I found (on Ramon Leon's blog or elsewhere I don't
    remember) could help you.
    You can try it in a workspace and see if it reduces your memory usage (after
    save and quit)
    comment unknown or unwanted commands :
      | tasks |
       tasks := OrderedCollection new
                   add: [MCFileBasedRepository flushAllCaches];
                   add: [WARegistry clearAllHandlers];
                  " add: [SMSqueakMap default clearCaches];"
                   add: [Smalltalk removeEmptyMessageCategories];
                   add: [Workspace
                           allSubInstancesDo: [:each | each setBindings:
    Dictionary new]];
                  " add: [Undeclared removeUnreferencedKeys];"
                  " add: [Categorizer sortAllCategories];"
                   add: [ODBCConnection cleanAll];
                   add: [Symbol compactSymbolTable];
                  " add: [ReleaseBuilderDeveloper new fixObsoleteReferences];"
                   add: [Smalltalk garbageCollectMost];
                   add: [Smalltalk garbageCollect ];
                   add: [Smalltalk garbageCollect ];
                   add: [Smalltalk garbageCollect ];
     add: [EventManager actionMaps keys do: [:each| EventManager
    releaseActionMapFor: each] ];
     add: [Debugger closeAllDebuggers];
     add:[Debugger allInstances do: [ :d | d release ] ];

                    yourself.
       UIManager default
           informUserDuring: [:bar | tasks
                   do: [:block |
                       bar value: block printString.
                       [block value]
                           on: Error
                           do: [:error | Transcript show: error;
                                    cr]]].


    Regards
    Alain

    "Tudor Girba" <tudor.girba at gmail.com> a écrit

    dans le message de news: 6AA1F065-3996-433B-AB7C-1640C08D5A7B at gmail.com...

    Hi,

    Should I to understand that the only way to enable more memory is to
    recompile the VM? Does that mean that there is no way to pass this
    information as a parameter like we can on Mac?

    The problem is that I cannot recompile the VM because I have no access to a
    Windows machine. Is there one available that provides more memory?

    Cheers,
    Doru


    On 21 Apr 2011, at 22:09, Alain_Rastoul wrote:

    > Hi Tudor,
    >
    > There is a constant in sqWin32Alloc.h (platforms\win32\vm) :
    > #define MAX_VIRTUAL_MEMORY 512*1024*1024
    > you can change it to whatever you want and rebuild the vm,
    > for exzmple give all the available memory less 256 M .
    >
    > HTH
    >
    > Regards
    > Alain
    >
    > "Tudor Girba" <tudor.girba at gmail.com> a
    > écrit
    > dans le message de news:
    > 03B9389F-C719-44D0-B106-2AC78B120F56-Re5JQEeQqe9Ui4FbrNnSJA at public.gmane.org
    > Hi,
    >
    > We have no specific startUp: methods in Moose. In any case, the issue with
    > opening the image does not seem to be related to startUp:.
    >
    > Is it really true that the Cog VM is limited to 512MB of memory?
    >
    > Cheers,
    > Doru
    >
    >
    > On 21 Apr 2011, at 14:27, Luc Fabresse wrote:
    >
    >> Hi Doru,
    >>
    >> 2011/4/21 Tudor Girba
    >> <tudor.girba at gmail.com>
    >> Hi,
    >>
    >>
    >>
    >> On Apr 21, 2011, at 14:06, Mariano Martinez Peck
    >> <marianopeck at gmail.com> wrote:
    >>
    >>>
    >>>
    >>> On Thu, Apr 21, 2011 at 1:58 PM, Tudor Girba
    >>> <tudor.girba at gmail.com> wrote:
    >>>> Hi again,
    >>>>
    >>>> I did not say what the problem was :). The problem was that when
    >>>> opening the image on Windows, he got a Space is low message and the
    >>>> image was not usable (see attachment).
    >>>
    >>> That's weird. Does moose have something on the startup list?   something
    >>> that can be bothering there?
    >>
    >> Not that I know of. Is there a way to check this?
    >>
    >> Classes should be registered using Smalltlak addToStartUpList: aClass
    >> Then aClass class>>#startUp: is executed at startup.
    >> So implementors of #startUp: on Moose classes should give you the answer.
    >>
    >> #Luc
    >>
    >>
    >> Actually, using exactly the same process some days ago he produced an
    >> image of 190MB. This one works just fine on Windows. The only difference
    >> between the two is the size of the loaded data.
    >>
    >> It would be really bad news if the Windows vm would be so severely
    >> limited
    >> in terms of memory.
    >>
    >> Cheers,
    >> Doru
    >>
    >>
    >>>
    >>> On Mac it worked just fine.
    >>>>
    >>>> Cheers,
    >>>> Doru
    >>>>
    >>>>
    >>>
    >>>>
    >>>>
    >>>>
    >>>> On 21 Apr 2011, at 12:52, Tudor Girba wrote:
    >>>>
    >>>>> Hi,
    >>>>>
    >>>>> I received a question from someone running a 200MB image on Windows
    >>>>> using Cog 2361.
    >>>>>
    >>>>> If I open the image on Mac, it works just fine. Unfortunately, I do
    >>>>> not have a Windows machine around, and I cannot test but I believe it
    >>>>> should be solvable by increasing the allocated memory.
    >>>>>
    >>>>> On Mac, I would run it with: ./Croquet -memory 1500m
    >>>>>
    >>>>> Can anyone help me with the right incantation for Windows?
    >>>>>
    >>>>> Cheers,
    >>>>> Doru
    >>>>>
    >>>>>
    >>>>> --
    >>>>> www.tudorgirba.com
    >>>>>
    >>>>> "What we can governs what we wish."
    >>>>>
    >>>>>
    >>>>>
    >>>>> <Space is low.png>
    >>>>
    >>>> --
    >>>> www.tudorgirba.com
    >>>>
    >>>> "Yesterday is a fact.
    >>>> Tomorrow is a possibility.
    >>>> Today is a challenge."
    >>>>
    >>>>
    >>>>
    >>>
    >>>
    >>>
    >>>
    >>> --
    >>> Mariano
    >>> http://marianopeck.wordpress.com
    >>>
    >>
    >
    > --
    > www.tudorgirba.com
    >
    > "Beauty is where we see it."
    >
    >
    >
    >
    >
    >
    >
    >

    --
    www.tudorgirba.com

    "If you interrupt the barber while he is cutting your hair,
    you will end up with a messy haircut."










  -- 
  Mariano
  http://marianopeck.wordpress.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gforge.inria.fr/pipermail/pharo-project/attachments/20110421/5f8da9a0/attachment.htm>


More information about the Pharo-project mailing list