[Mono-list] Re: The Mauve unicode testcase and VM performance

Mark Wielaard mark@klomp.org
Tue, 13 Apr 2004 21:10:44 +0200


--=-iIMUui5gsvw2M+oqYqaD
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Hi,

On Tue, 2004-04-13 at 20:55, Stuart Ballard wrote:
> Did you try --aot'ing classpath.dll, IK.VM.NET.dll etc?
>=20
> I'd imagine that this particular microbenchmark spends a large=20
> proportion of its time inside classpath itself, suggesting that merely=20
> JITing the mauve part wouldn't help much.

Should have thought about that.
Just tried it, but:

$ for i in *.dll; do mono --aot -O=3Dall $i; done
Mono Ahead of Time compiler - compiling assembly OpenSystem.Java.dll
Executing the native assembler: as /tmp/mono_aot_ZNn0Pd -o /tmp/mono_aot_ZN=
n0Pd.o
Executing the native linker: ld -shared -o OpenSystem.Java.dll.so /tmp/mono=
_aot_ZNn0Pd.o
Compiled 12 out of 12 methods (100%)
0 methods contain absolute addresses (0%)
0 methods contain wrapper references (0%)
0 methods contain lmf pointers (0%)
0 methods have other problems (0%)
AOT RESULT 0
Mono Ahead of Time compiler - compiling assembly SharpZipLib.dll
Executing the native assembler: as /tmp/mono_aot_SVrc0t -o /tmp/mono_aot_SV=
rc0t.o
Executing the native linker: ld -shared -o SharpZipLib.dll.so /tmp/mono_aot=
_SVrc0t.o
Compiled 508 out of 540 methods (94%)
31 methods contain absolute addresses (5%)
1 methods contain wrapper references (0%)
0 methods contain lmf pointers (0%)
0 methods have other problems (0%)
AOT RESULT 0
Mono Ahead of Time compiler - compiling assembly awt.dll
Executing the native assembler: as /tmp/mono_aot_DbmJ3s -o /tmp/mono_aot_Db=
mJ3s.o
Executing the native linker: ld -shared -o awt.dll.so /tmp/mono_aot_DbmJ3s.=
o
Compiled 320 out of 342 methods (93%)
0 methods contain absolute addresses (0%)
22 methods contain wrapper references (6%)
0 methods contain lmf pointers (0%)
0 methods have other problems (0%)
AOT RESULT 0
Mono Ahead of Time compiler - compiling assembly classpath.dll
Executing the native assembler: as /tmp/mono_aot_NrbGZa -o /tmp/mono_aot_Nr=
bGZa.o
Executing the native linker: ld -shared -o classpath.dll.so /tmp/mono_aot_N=
rbGZa.o
Compiled 18338 out of 18766 methods (97%)
0 methods contain absolute addresses (0%)
428 methods contain wrapper references (2%)
0 methods contain lmf pointers (0%)
0 methods have other problems (0%)
AOT RESULT 0
Mono Ahead of Time compiler - compiling assembly ik.vm.jni.dll
=20
** ERROR **: file object.c: line 466 (mono_class_vtable): assertion failed:=
 (fklass->byval_arg.type =3D=3D MONO_TYPE_PTR)
aborting...
Aborted
Mono Ahead of Time compiler - compiling assembly ik.vm.net.dll
Executing the native assembler: as /tmp/mono_aot_PGuh22 -o /tmp/mono_aot_PG=
uh22.o
Executing the native linker: ld -shared -o ik.vm.net.dll.so /tmp/mono_aot_P=
Guh22.o
Compiled 1067 out of 1092 methods (97%)
0 methods contain absolute addresses (0%)
25 methods contain wrapper references (2%)
0 methods contain lmf pointers (0%)
0 methods have other problems (0%)
AOT RESULT 0
[mark@elsschot:~/src/mauve]
$ time echo gnu.testlet.java.lang.Character.unicode | mono mauve.exe -debug
=20
Unhandled Exception: System.TypeInitializationException: An exception was t=
hrown by the type initializer for java.io.File ---> System.TypeInitializati=
onException: An exception was thrown by the type initializer for java.lang.=
System ---> System.TypeInitializationException: An exception was thrown by =
the type initializer for gnu.java.io.EncodingManager ---> System.TypeInitia=
lizationException: An exception was thrown by the type initializer for java=
.lang.Class ---> System.ArrayTypeMismatchException: Source array type canno=
t be assigned to destination array type.
in <0x000dc> MethodDescriptor:FromMethodBase (System.Reflection.MethodBase)
in <0x00011> CompiledTypeWrapper:CreateMethodWrapper (System.Reflection.Met=
hodBase)
in <0x000c9> CompiledTypeWrapper:LazyPublishMembers ()
in <0x00041> LazyTypeWrapper:Finish ()
in <0x0004d> NativeCode.java.lang.VMClass:CreateClassInstance (TypeWrapper)
in <0x00063> NativeCode.java.lang.VMClass:getClassFromWrapper (TypeWrapper)
in <0x00022> NativeCode.java.lang.VMClass:getClassFromType (System.Type)
in <0x00025> java.lang.Object:instancehelper_getClass (object)
in <0x000cd> java.security.Permissions:add (java.security.Permission)
in <0x00055> java.lang.Class:.cctor ()
--- End of inner exception stack trace ---
=20
in <0x00429> gnu.java.io.EncodingManager:.cctor ()
--- End of inner exception stack trace ---
=20
in (unmanaged) gnu.java.io.EncodingManager:getEncoder (java.io.OutputStream=
)
in <0x0003a> java.io.OutputStreamWriter:.ctor (java.io.OutputStream)
in <0x0003c> java.io.PrintWriter:.ctor (java.io.OutputStream)
in <0x00019> java.io.PrintWriter:.ctor (java.io.OutputStream,bool)
in <0x00073> java.io.PrintStream:.ctor (java.io.OutputStream,bool)
in <0x0006d> java.lang.VMSystem:makeStandardOutputStream ()
in <0x00899> java.lang.System:.cctor ()
--- End of inner exception stack trace ---
=20
in (unmanaged) java.lang.System:getProperty (string)
in <0x00010> java.io.File:.cctor ()
--- End of inner exception stack trace ---
=20
in (unmanaged) java.io.File:.ctor (string)
in <0x0003e> java.io.FileReader:.ctor (string)
in <0x000bf> gnu.testlet.SimpleTestHarness:.ctor (bool,bool,bool)
in <0x001fc> gnu.testlet.SimpleTestHarness:main (string[])
=20
=20
real    0m0.519s
user    0m0.039s
sys     0m0.021s


--=-iIMUui5gsvw2M+oqYqaD
Content-Type: application/pgp-signature; name=signature.asc
Content-Description: This is a digitally signed message part

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQBAfDs0xVhZCJWr9QwRApFfAKCjw5yRMIZYFWcrUYKnLbUFCprbbACgqIBz
BwG9Qa/+5BWH9kRbrvgejLM=
=j1ow
-----END PGP SIGNATURE-----

--=-iIMUui5gsvw2M+oqYqaD--