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

Alain_Rastoul alr.dev at free.fr
Thu Apr 21 22:36:19 CEST 2011


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 at gmail.com...
> 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."








More information about the Pharo-project mailing list