Cog on linux (was: Re: [squeak-dev] Re: UI lockup in Squeak 4.1)

Rob Withers reefedjib at yahoo.com
Tue Jul 13 18:44:11 UTC 2010


--------------------------------------------------
From: "Levente Uzonyi" <leves at elte.hu>
Sent: Tuesday, July 13, 2010 12:46 PM
To: "The general-purpose Squeak developers list" 
<squeak-dev at lists.squeakfoundation.org>
Subject: Cog on linux (was: Re: [squeak-dev] Re: UI lockup in Squeak 4.1)

> On Tue, 13 Jul 2010, Rob Withers wrote:
>
>>
>> --------------------------------------------------
>> From: "Andreas Raab" <andreas.raab at gmx.de>
>> Sent: Tuesday, July 13, 2010 11:29 AM
>> To: "The general-purpose Squeak developers list" 
>> <squeak-dev at lists.squeakfoundation.org>
>> Subject: [squeak-dev] Re: UI lockup in Squeak 4.1
>>
>>> On 7/13/2010 6:39 AM, Rob Withers wrote:
>>>> The low-space watcher is running, at least before the problem starts. I
>>>> do eventually run out of memory, but the uninterruptable state happens
>>>> before this.
>>>
>>> In which case you want to do the following:
>>> * Launch your app and wait until it's in the "growing state"
>>> * Hit F2 and from the VM's preference menu choose "Debug" and then 
>>> "Print all processes"
>>>
>>> This will dump a list of all the call stacks of all processes. One of 
>>> them is the culprit consuming memory and you'll probably be able to tell 
>>> quickly from just looking at it (if not, you can email the output here 
>>> but it typically takes a domain expert to understand what's going 
>>> wrong).
>>>
>>
>> Thanks for this pointer, Andreas.
>>
>> This time it was a Cog VM which spasmed, which I use for my client 
>> (Squeak 4.1 for server for use with linux vm - I have no ability to 
>> compile a linux Cog vm:  would love if someone posted one that could be 
>> launched headless for my webhost).
>
> Cog works, but i think you're trying to use the -headless switch, which 
> (is deprecated) and tells the vm to use the X11 display, but with no 
> window. Servers usually don't have X11, so it won't work. You better 
> use -vm-display-null (and -vm-sound-null). Try squeak --help for further 
> useful options (like tuning Cog).
>

I am trying to use the -headless switch.  Good to know it is deprecated.  So 
you happen to have a Cog for linux binary (version 17 - 20), which I could 
use?

Thanks,
Rob

>
> Levente
>
>>
>> It started running at 100% and I did your F2 -> Debug Options -> Print 
>> all processes.  It started dumping a LOT to the Debug Console, then it 
>> froze, still at 100%, but no increase in memory now and it went (Not 
>> Responding) and greyed out the window.
>>
>> Luckily, I was able to see enough of the stack that was causing problems. 
>> It is infinitely looping in this method:
>>
>> LanguageEnvironment class>>#localeID: localeID
>> ^self knownEnvironments at: localeID ifAbsent: [self localeID: (LocaleID 
>> isoLanguage: 'en')]
>>
>> This has nothing to do with my code, except I must be calling something 
>> that enters this loop.  It happens in both Cog (Windows) and Squeak4.1 
>> (Linux <headless> and Windows).
>>
>> Not sure how to fix this.
>>
>> Rob
>>
>>> Cheers,
>>>   - Andreas
>>>
>>
>>
> 



More information about the Squeak-dev mailing list