[Mono-list] Web app performance profiling
Andrey Tkach
andriy.tkach at stu-electronics.com
Thu Aug 3 07:45:39 EDT 2006
Hello,
Bellow I put all my output which I got while trying to profile mod_mono.
I tried it with mono 1.1.15 & mod_mono 1.1.14, then I upgrated both to
1.1.16, but exactly the same crash remains. What might be the reason of
this? Seems like a bug. Should I report it to bugzilla?
Sincerely yours,
Andriy Tkach
Output
stack----------------------------------------------------------------
suse:/home/user # sudo -u wwwrun /usr/lib/pkgconfig/../../bin/mono
--profile /usr/lib/pkgconfig/../../lib/xsp/1.0/mod-mono-server.exe
--filename /tmp/mod_mono_server_global --applications
/TestMono:/srv/www/htdocs/TestMono,/TestMonoLoad:/srv/www/htdocs/TestMon
oLoad,/TestMonoSimple:/srv/www/htdocs/TestMonoSimple,/TestMonoSVS:/srv/w
ww/htdocs/TestMonoSVS --nonstop --master
mod-mono-server
Listening on: /tmp/mod_mono_server_global
Root directory: /home/user
Total time spent compiling 7099 methods (sec): 11.09
Slowest method to compile (sec): 0.407:
System.IO.SearchPattern2::Compile(string)
Time(ms) Count P/call(ms) Method name
########################
142672.635 6 23778.773
Mono.WebServer.ModMonoApplicationHost::ProcessRequest(int,string,string,
string,string,string,int,string,int,string,string[],string[])
Callers (with count) that contribute at least for 1%:
3 50 % Mono.WebServer.ModMonoWorker::InnerRun(object)
3 50 %
Mono.WebServer.ModMonoApplicationHost::ProcessRequest(object,byte[]&,byt
e[]&,int,string,string,string,string,string,int,string,int,string,string
[],string[])
########################
82363.542 100 823.635 System.Threading.Thread::Sleep(int)
Callers (with count) that contribute at least for 1%:
93 93 % System.IO.DefaultWatcher::Monitor()
=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================
Stacktrace:
Native stacktrace:
/usr/lib/pkgconfig/../../bin/mono(mono_handle_native_sigsegv+0xe6)
[0x81594a6]
/usr/lib/pkgconfig/../../bin/mono [0x8143727]
[0xffffe440]
/lib/libc.so.6(vasprintf+0xbc) [0xb7d30d8c]
/opt/gnome/lib/libglib-2.0.so.0(g_vasprintf+0x37) [0xb7e9c4c7]
/opt/gnome/lib/libglib-2.0.so.0(g_strdup_vprintf+0x32)
[0xb7e8dc12]
/opt/gnome/lib/libglib-2.0.so.0(g_strdup_printf+0x27)
[0xb7e8dc47]
/usr/lib/pkgconfig/../../bin/mono [0x80c43f1]
/usr/lib/pkgconfig/../../bin/mono [0x80c47c3]
/usr/lib/pkgconfig/../../bin/mono [0x80c45a7]
/usr/lib/pkgconfig/../../bin/mono [0x80c55fe]
/usr/lib/pkgconfig/../../bin/mono(mono_profiler_shutdown+0x25)
[0x80c3f85]
/usr/lib/pkgconfig/../../bin/mono [0x8144bb1]
/usr/lib/pkgconfig/../../bin/mono(mono_main+0x867) [0x805d357]
/usr/lib/pkgconfig/../../bin/mono(__fxstat64+0x137) [0x805bd0b]
/lib/libc.so.6(__libc_start_main+0xdc) [0xb7ce987c]
/usr/lib/pkgconfig/../../bin/mono(sinh+0x4d) [0x805bc61]
------------------------------------------------------------------------
---
> -----Original Message-----
> From: mono-list-bounces at lists.ximian.com [mailto:mono-list-
> bounces at lists.ximian.com] On Behalf Of Gonzalo Paniagua Javier
> Sent: Monday, July 31, 2006 9:33 PM
> To: mono-list at lists.ximian.com
> Subject: Re: [Mono-list] Web app performance profiling
>
> On Mon, 2006-07-31 at 17:20 +0300, Andrey Tkach wrote:
> > Hello,
>
> > We have one web application, with some performance issues while
> > testing it on Suse Linux 10.1 and mod_mono 1.1.15. But on .Net, IIS
> > results are much better. I supposed to make a decision whether such
> > platform suitable for our middleware. Are there some web-resources
> > about testing web-applications performance on mono?
> >
> > I feel I need to profile something to see what makes such delays.
What
> > is the right way to profile mod-mono-server?
>
> I assume you're letting mod_mono start mod-mono-server. The steps to
> profile it are as follows:
> 1. Start apache.
> 2. Run 'ps aux' and copy the command line used to run
> mod-mono-server.exe
> 3. Stop apache
> 4. With the same user that runs apache, run the command line
copied
> in 2 adding the '--profile' parameter to mono.
> 5. Start apache.
> 6. Do a few requests (they will take a lot to process).
> 7. Stop apache
> 8. mod-mono-server will stop and you'll get profile output.
>
> Note that when --profile is enabled, mono is *extremely* slow. Do as
> many request as you need to get a result that excludes start up stuff.
>
> -Gonzalo
>
>
> _______________________________________________
> 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