On Mon, Feb 23, 2009 at 1:37 PM, Aaron Knister <aaron.knis...@gmail.com>wrote:

> I realize this is an extremely open ended and vague question but I'm
> running an application that's doing some intense computation and taking
> forever and a half. Using strace I looked at what it was doing and I didn't
> know what to make of what I saw. I pasted it below-
>
> % time     seconds  usecs/call     calls    errors syscall
> ------ ----------- ----------- --------- --------- ----------------
>  57.97    0.053464          59       911       431 futex
>  35.74    0.032959         122       270       270 rt_sigsuspend
>   5.42    0.004995         178        28        28 epoll_wait
>   0.88    0.000813           1       550           tgkill
>   0.00    0.000000           0         4           mmap
>   0.00    0.000000           0         5           mprotect
>   0.00    0.000000           0       540       540 rt_sigreturn
>   0.00    0.000000           0       448           clock_gettime
> ------ ----------- ----------- --------- --------- ----------------
> 100.00    0.092231                  2756      1269 total
>
> Does anybody have an idea as to why it's spending so much time calling
> futex and rt_sigsuspend?
>

futex activity means locking is going on. Until 2.4 mono had an
implementation that depends on polling.
rt_sigsuspend is used by the GC machinery.

Use one the built-in profiler from mono to figure out performance issues.
_______________________________________________
Mono-list maillist  -  Mono-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-list

Reply via email to