[squeak-dev] Re: Squeak hang at full cpu - help

Alain_Rastoul alr.dev at free.fr
Fri Oct 22 16:01:31 UTC 2010


Thanks Levente, but. . . no, wrong guess , sorry :-)

Instead of memory intensive I should have said  keeping memory about 95/99 % 
used all the time until hang.

When squeak hangs it is about 60, 80, 90 or 100Mo , not always the same, but 
not that much because it is a small test database (less than 500 mo in 
mssql) and in most databases a lot of columns have redundant values - ie bad 
selectivity.
I've been thinking of something wrong with FFI/ODBC, but another test I just 
made without it have the same problem (initially with Cog but I reported it 
in my squeak image) : I load a 1Gb bulk export file of the  table of another 
database  into one big dictionary.
With squeak It hangs in few minutes at about 60 mo , in Cog it finishes in 
30 minutes at about 220 mo.

I'm trying to compile the vm (ok for now) and run it under debug  but gdb is 
not ok at this time, I have problems with my mingw toolchain (MSVC didn't 
want to compile perhaps due to the express version I have), I 'm not sure it 
will be useful and I would prefer a "smalltalk" way to search.

I don't understand why everything seems to be ok without MessageTally ?
It seems abnormal to me - am I wrong? - to see only few processes in the 
debug call stack ?
Another symptom that makes me think processes are terminated is that in the 
debug output console a lot of event buffer overflow messages are displayed 
when I move the mouse , I suppose because the UI process has vanished and 
does not peek them.
I tryed to intercept process termination but it didn't work, I will make 
another try with dump to a file it could work if  they are "cleanly" 
terminated

Thank you BTW for your response, any ideas are very welcome

Alain

"Levente Uzonyi" <leves at elte.hu> a écrit dans le message de news: 
Pine.LNX.4.64.1010221455550.13297 at login03.caesar.elte.hu...
> On Thu, 21 Oct 2010, Alain_Rastoul wrote:
>
>> Hi Everybody,
>> I have a standard squeak 4.1 with seaside 3.0 preloaded under Windows XP
>> (seaside 3.0 rc OneClick Image) with FFI, ODBC packages installed and a 
>> very
>> memory intensive application who load data from a MSSQL server and hash 
>> it
>> into dictionaries.
>> It is running in a process started at systemBackgroundPriority, and is
>> launched with a MessageTally spyAllOn:.
>> After running a few minutes it hangs up at full CPU, and I can't see what 
>> is
>> going on, everything
>> is hung (no Ctrl., no mouse)
>> When I open the debug console and dump processes I see only few processes
>> (MessageTally>spyEvery:on:,
>> handleTimerEvent, userInterruptWatcher, lowSpaceWatcher) but no UI 
>> process
>> and no app process.
>> I tryed to put halts in code but it doesn't change anything.
>> I noticed that it occurs when the memory usage is about 99% (I see it 
>> with a
>> MemoryUsageMorph ticking),
>> but not allways at the same time, it can load 10k, 20k or 30k rows before
>> hanging.
>> If I remove the MessageTally, it ran several times without hanging.
>> I don't see any direct relation between MessageTally and hanging the VM
>> (allocations / GC ?)
>> I will try to generate and compile the vm with MSVC if I can (I can't 
>> test
>> my app under linux)
>>
>> What is the way go with this kind of problem ?
>> Any help, tip for debugging, advice, idea, remark (...) are welcome.
>> Thanks in advance
>
> I guess you're running out of memory. What's the memory usage of Squeak 
> when the image hangs?
>
>
> Levente
>
>>
>> Regards,
>> Alain
>>
>>
>>
>>
>>
>
> 






More information about the Squeak-dev mailing list