mycpp Code Generation

Measure the speedup from mycpp, and the resource usage.

Source code: oil/mycpp/examples

User Time (milliseconds)

Lower ratios are better.

example name C++ Python C++ : Python
loops 0.0 344.8 0.000
strings 0.0 10.7 0.000
varargs 0.0 4.3 0.000
modules 1.1 188.4 0.006
asdl_generated 3.2 379.5 0.008
fib_iter 7.8 749.3 0.010
scoped_resource 13.2 804.1 0.016
fib_recursive 15.5 881.2 0.018
tuple_return_value 4.5 112.8 0.039
classes 2.5 25.0 0.102
cgi 71.7 492.6 0.146
escape 69.3 345.4 0.201
length 36.1 149.4 0.242
containers 36.5 131.5 0.277

Max Resident Set Size (MB)

Lower ratios are better. We use MB (powers of 10), not MiB (powers of 2).

example name C++ Python C++ : Python
fib_iter 2.9 7.5 0.39
strings 3.0 7.5 0.40
loops 3.0 7.6 0.40
fib_recursive 3.1 7.5 0.41
cgi 3.1 7.5 0.41
escape 3.1 7.4 0.42
modules 3.1 7.3 0.42
scoped_resource 3.2 7.5 0.43
length 3.3 7.6 0.43
tuple_return_value 3.2 7.4 0.44
varargs 3.2 7.4 0.44
asdl_generated 3.2 7.2 0.44
classes 3.4 7.7 0.45
containers 36.2 48.1 0.75

TODO