[Mono-list] Mono VM speed
pinggi at centrum.cz
pinggi at centrum.cz
Sun Apr 15 15:29:24 UTC 2012
Hi, I have 'problem' with mono engine speed. I developed and compiled app on Win7. It uses GTK# + Cairo to draw animation of 5 000 rotating lines in full screen. I compiled it under Monodevelop with Default Runtime / Release|x86 profile.
Now if I run it from command line like this:
>PerfDrawing3.exe
It runs under .Net fw 4.0 and I get 26 FPS (one frame in 38 ms).
If I run it under Mono like this:
>mono PerfDrawing3.exe
I get 10 FPS (97ms per frame) => 2,5x slower!
I tried some optimization mono parameters like:
mono --optimize=all PerfDrawing3.exe
mono --optimize=simd PerfDrawing3.exe
mono --optimize=sse2 PerfDrawing3.exe
mono --llvm PerfDrawing3.exe
mono --gc=sgen PerfDrawing3.exe
...but still the same result. I tried to aot it, but without success too. Probably it is possible only on Linux platform :-(
>mono --aot=full -O=all PerfDrawing3.exe
Mono Ahead of Time compiler - compiling assembly PerfDrawing3.exe
Code: 23432 Info: 461 Ex Info: 1466 Unwind Info: 103 Class Info: 1041 PLT: 167 G
OT Info: 1756 GOT: 936 Offsets: 1330
Executing the native assembler: as -o \AppData\Local\Temp\mono_
aot_a06524.o \AppData\Local\Temp\mono_aot_a06524
'as' is not recognized as an internal or external command,
operable program or batch file.
AOT of image PerfDrawing3.exe failed.
Here is my version string:
>mono -V
Mono JIT compiler version 2.10.8 (tarball)
Copyright (C) 2002-2011 Novell, Inc, Xamarin, Inc and Contributors. www.mono-pro
ject.com
TLS: normal
SIGSEGV: normal
Notification: Thread + polling
Architecture: x86
Disabled: none
Misc: softdebug
LLVM: supported, not enabled.
GC: Included Boehm (with typed GC and Parallel Mark)
I quite surprised that llvm is "not enabled" and GC is "Boehm". It is by default I hope and can be changed by --llvm and --gc switches.
Well, is there anything what I missed or Mono 2.10.8 @ Win7 is 2,5x slower than .Net Fw 4.0 VM?
More information about the Mono-list
mailing list