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

Alain_Rastoul alr.dev at free.fr
Thu Apr 21 23:52:54 CEST 2011


(And of course Tudor, I forgot to mention it but I can send you this vm if you need)

"Alain_Rastoul" <alr.dev at free.fr> a écrit dans le message de news: ioq86o$69j$1 at dough.gmane.org...
  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-JsoAwUIsXosN+BqQ9rBEUg at public.gmane.org...
    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-Re5JQEeQqe9Ui4FbrNnSJA at public.gmane.org

      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-XMD5yJDbdMRG2NFembrH+g at public.gmane.orgorg
      > 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/d1a7e540/attachment.htm>


More information about the Pharo-project mailing list