diff --git a/perf-compare/README.org b/perf-compare/README.org index d111b30..9e10b93 100644 --- a/perf-compare/README.org +++ b/perf-compare/README.org @@ -225,13 +225,14 @@ Calls per second: 1626.3612 Table summarizing number of calls per second that the particular library can reach by either using ~PyObject_Call~ or ~PyObject_Str~. Blank column indicates either that no such facility is available, or I could not find how to use it. -| Library \ How | PyObject_Call | PyObject_Str | -| | | | -|--------------------+---------------+--------------| -| Python | 1000000 | 1600000 | -| burgled-batteries3 | 16500 | - | -| PyCall.jl | 320000 | 500000 | -| py4cl2-cffi (SBCL) | 55000 | 210000 | -| py4cl2-cffi (CCL) | 16000 | 72000 | -| py4cl (SBCL) | 4000 | - | -| py4cl (CCL) | 2000 | - | +| Library \ How | PyObject_Call | PyObject_Str | +| | | | +|---------------------------+---------------+--------------| +| Python | (x1) 1000000 | (x1) 1600000 | +| burgled-batteries3 | (x61) 16500 | - | +| PyCall.jl | (x3) 320000 | (x3) 500000 | +| py4cl2-cffi (SBCL 2.3.11) | (x20) 50000 | (x6) 265000 | +| py4cl2-cffi (SBCL 1.5.4) | (x22) 45000 | (x6) 260000 | +| py4cl2-cffi (CCL) | (x62) 16000 | (x22) 72000 | +| py4cl (SBCL) | (x250) 4000 | - | +| py4cl (CCL) | (x500) 2000 | - | diff --git a/perf-compare/perf.csv b/perf-compare/perf.csv new file mode 100644 index 0000000..5b1de33 --- /dev/null +++ b/perf-compare/perf.csv @@ -0,0 +1,8 @@ +Platform or Library,PyObject_Call,PyObject_Str +Python,1000000,1600000 +PyCall.jl,320000,500000 +burgled-battteries3,16500, +py4cl (SBCL),4000, +py4cl2-cffi (SBCL 2.3.11),50000,265000 +py4cl2-cffi (SBCL 1.5.4),45000,260000 +py4cl2-cffi (CCL),16000,72000 diff --git a/perf-compare/run-py4cl2-cffi.lisp b/perf-compare/run-py4cl2-cffi.lisp index 29eb3e7..b2316f7 100644 --- a/perf-compare/run-py4cl2-cffi.lisp +++ b/perf-compare/run-py4cl2-cffi.lisp @@ -38,13 +38,13 @@ (pystart) (print-and-eval-perf - 100000 + 1000000 (lambda (x) (declare (optimize speed)) (pystr x))) (print-and-eval-perf - 100000 + 1000000 (lambda (x) (declare (optimize speed)) (pycall "str" x)))