[Mono-list] Garbage collection and memory usage
Georgi Moskov
g.moskov at gmail.com
Fri Apr 7 04:00:24 EDT 2006
Hi Miguel,
I am experiencing the same problem with my web application and the
root ot the problem seems to be in the mono process that runs
mod-mono-server. The curious thing is that it seems to hang every time
when it consumes around 50% from the system memory. Here are some
traces, I hope they help a little:
top:
Tasks: 66 total, 2 running, 64 sleeping, 0 stopped, 0 zombie
Cpu(s): 4.3% us, 3.7% sy, 0.0% ni, 91.7% id, 0.0% wa, 0.0% hi, 0.3% si
Mem: 190940k total, 185772k used, 5168k free, 3080k buffers
Swap: 72252k total, 35984k used, 36268k free, 38264k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
16019 www-data 15 0 124m 93m 8876 S 6.6 50.3 8:17.75 mono
gdb:
0xb7c706c6 in semop () from /lib/tls/libc.so.6
(gdb) bt
#0 0xb7c706c6 in semop () from /lib/tls/libc.so.6
#1 0xb7ecfbb7 in _wapi_shm_sem_lock () from /usr/lib/libmono.so.0
#2 0xb7ec5567 in _wapi_handle_count_signalled_handles ()
from /usr/lib/libmono.so.0
#3 0xb7ed3ca6 in SignalObjectAndWait () from /usr/lib/libmono.so.0
#4 0xb7ed3ed2 in WaitForMultipleObjectsEx () from /usr/lib/libmono.so.0
#5 0xb7e86b3b in mono_install_thread_callbacks () from
/usr/lib/libmono.so.0
#6 0xb7e86e8a in mono_thread_manage () from /usr/lib/libmono.so.0
#7 0xb7e0c0da in mono_main () from /usr/lib/libmono.so.0
#8 0x0804857b in ?? ()
#9 0x00000005 in ?? ()
#10 0xbfc84ec4 in ?? ()
#11 0xbfc84e98 in ?? ()
#12 0xb7bac974 in __libc_start_main () from /lib/tls/libc.so.6
#13 0xb7bac974 in __libc_start_main () from /lib/tls/libc.so.6
strace:
# strace -p 16019
Process 16019 attached - interrupt to quit
semop(3538953, 0xbfc84b90, 1
Mono version is 1.1.13.2
mod_mono version is 1.1.13
Regards,
Georgi Moskov
On 4/7/06, Miguel de Icaza <miguel at ximian.com> wrote:
> Hello,
>
> > Assuming this is the case, what on earth can I do to troubleshoot this?
> > Is there something we can do in code to help the GC? I thought the
> > whole point of languages like C# was to get /away/ from awful days of
> > malloc + free'ing memory like in C :(
>
> Thanks for posting the message, we need a few more data points here.
>
> You mention that the application will go down within twenty minutes. By
> the time it goes down, what is growing out of proportion? Is it the
> Apache process with mod_mono or is it the Mono process that runs
> mod-mono-server.exe?
>
> You mentioned that requests were being received, but they were not
> getting a reply. What was the size of Mono then?
>
> Am curious in this particular case if this is a case of Mono leaking
> memory or if this is a case of Mono running out of threads to process
> responses.
>
> Your initial description sounds like Mono is hanging, not that Mono is
> leaking.
>
> This could be caused by a number of reasons: the requests might not be
> completing; You might be using some library that has a threadpool
> leak; You might be starving and deadlocking the threadpool internally.
>
> Miguel.
> _______________________________________________
> Mono-list maillist - Mono-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-list
>
More information about the Mono-list
mailing list