View · Search · Index
No registered users in community xowiki
in last 10 minutes

[Xotcl] OO scripting benchmark

From: Gustaf Neumann <neumann_at_wu-wien.ac.at>
Date: Thu, 27 Sep 2001 21:35:12 +0200

 Dear XOTclers,

 here are some more or less useless benchmarks, which compare XOTcl with
 OTcl, ITcl, stoop and classytcl. everything was done on the same machine
 with tcl 8.3.2 and the forthcoming XOTcl 0.9 version.

 The short summary: XOTcl compares very well with OTcl, methodcalls are
 faster than in itcl, but object creation is still slower. For the memory
 consumption for objects, XOTcl is now better than itcl or OTcl.
 The xotcl numbers are with uwe's new "namespace on demand" code,
 where the namespace is only allocated when needed (e.g. when procs or
 children are added).

 The first benchmarks are from http://www.bagley.org/~doug/shootout.
 Methcall measures the speed of the method invocation, objinst creates
 objects and does a few operations on it. The reported times are from the
 unix time command (user/system/elapsed time)

XOTcl
  methcall: 0.700u 0.000s 0:00.70 101.4% 0+0k 0+0io 282pf+0w
  objinst: 2.390u 0.010s 0:02.40 100.0% 0+0k 0+0io 282pf+0w
OTcl
  methcall: 1.370u 0.000s 0:01.36 100.7% 0+0k 0+0io 330pf+0w
  objinst: 3.090u 0.000s 0:03.09 100.0% 0+0k 0+0io 330pf+0w
itcl
  methcall: 1.060u 0.000s 0:01.06 100.0% 0+0k 0+0io 285pf+0w
  objinst: 2.010u 0.020s 0:02.03 100.0% 0+0k 0+0io 286pf+0w
stooop
  methcall: 2.350u 0.010s 0:02.57 91.8% 0+0k 0+0io 259pf+0w
  objinst: 4.780u 0.010s 0:04.81 99.5% 0+0k 0+0io 259pf+0w
classytcl
  methcall: 1.040u 0.030s 0:01.07 100.0% 0+0k 0+0io 284pf+0w
  objinst: 2.990u 0.050s 0:03.07 99.0% 0+0k 0+0io 284pf+0w


These folowing numbers compare the speed and memory consumption
for creating 10000 objects. The memory consumption is not only
the XOTclObject structure, but as well everything allocated
by Tcl as well. The test compares the memory size reported
by ps before and after the creation of 10000 objects.

        Memory per object creation time
itcl 299 33
OTcl 277 72
XOTcl 210 40
ClassyTcl 175 16
Stooop 124 96


 all the best

-gustaf neumann