Python Interpreters Benchmarks
x64 ArchLinux : AMD® Ryzen 7 4700U®

vs

 1 : Are the PyPy programs faster? At a glance.

Each chart bar shows, for one unidentified benchmark, how much the fastest PyPy program used compared to the fastest Numba program.

(Memory use is only compared for tasks that require memory to be allocated.)


These are not the only compilers and interpreters. These are not the only programs that could be written. These are not the only tasks that could be solved. These are just 10 tiny examples.

 2 : Are the PyPy programs faster? Approximately.

Each table row shows, for one named benchmark, how much the fastest PyPy program used compared to the fastest Numba program.

(Memory use is only compared for tasks that require memory to be allocated.)

 PyPy used what fraction? used how many times more? 
Benchmark Time Memory Code
 binary-trees1/611/2±
 spectral-norm †1/15 ±
 n-body †1/13 ±
 fibonacci1/9 ±
 fib50 †1/3 ±
 templates †± ±
 iobench † ±
 PyPy used what fraction? used how many times more? 
Time-used  |-  |---  25% median  75%  ---|  -|
(Elapsed secs)1/611/611/141/9±

† possible mismatch - one-core program compared to multi-core program.

± read the measurements and then read the program source code.

 3 : Are the PyPy programs faster? Measurements.

These are not the only tasks that could be solved. These are just 10 tiny examples. These are not the only compilers and interpreters. These are not the only programs that could be written.

For each named benchmark, measurements of the fastest PyPy program are shown for comparison against measurements of the fastest Numba program.

Program Source Code CPU secs Elapsed secs Memory KB Code B ≈ CPU Load
 binary-trees 
PyPy2.271.0491,028743  32% 67% 25% 28% 24% 28% 22% 24%
Numba357.8863.59154,632734  73% 70% 76% 94% 76% 74% 69% 75%
 spectral-norm 
PyPy0.090.09?594  0% 0% 0% 100% 18% 0% 0% 0% †
Numba1.311.34131,484416  15% 9% 10% 8% 8% 9% 13% 99% †
 n-body 
PyPy3.293.2974,8561337  0% 100% 1% 0% 1% 1% 1% 1% †
Numba42.5942.63148,1161347  30% 67% 10% 9% 37% 16% 10% 15% †
 fibonacci 
PyPy0.170.17?181  6% 0% 0% 0% 0% 6% 11% 100%
Numba1.571.59120,220164  38% 28% 31% 98% 41% 51% 31% 52%
 fib50 
PyPy0.480.4877,576130  4% 100% 0% 2% 2% 0% 2% 0% †
Numba1.471.48119,832165  15% 14% 8% 4% 5% 13% 10% 99% †
 templates 
PyPy2.372.4198,384307  0% 6% 94% 0% 0% 0% 1% 0% †
Numba1.621.64121,232344  24% 19% 99% 23% 24% 24% 26% 19% †
 iobench 
PyPy14.7314.7380,864370  0% 0% 100% 0% 0% 0% 1% 0% †
Numba4.864.88131,784400  37% 7% 7% 9% 61% 5% 16% 4% †
 mandelbrot 
No program
Numba61.518.68133,9603886  94% 91% 96% 93% 93% 98% 92% 95%
 richards 
PyPy0.180.18?2423  18% 5% 100% 0% 0% 5% 5% 0%
No program
 reverse-complement 
PyPy0.060.06?432  0% 14% 0% 0% 0% 14% 14% 100%
No program
 regex-dna 
PyPy0.100.11?501  100% 0% 0% 0% 0% 0% 0% 0%
No program
 pystone 
PyPy0.080.09?2301  100% 10% 0% 0% 0% 20% 0% 11%
No program
 pidigits 
PyPy2.982.9981,732322  100% 0% 0% 0% 1% 0% 0% 0%
No program
 fannkuch-redux 
PyPy1.680.58322,0081009  41% 19% 66% 16% 43% 68% 66% 32%
No program
 k-nucleotide 
PyPy0.090.09?593  22% 18% 0% 100% 0% 0% 0% 0%
No program
 jsonbench 
PyPy0.900.9080,556322  0% 0% 100% 3% 1% 0% 1% 0%
No program
 fasta-redux 
PyPy0.190.19?1115  0% 0% 5% 100% 5% 5% 0% 0%
No program
 fasta 
PyPy1.751.7577,640900  2% 2% 2% 2% 100% 3% 2% 1%
No program
 thread-ring 
PyPy0.110.11?407  0% 8% 92% 0% 9% 0% 0% 8%
No program
 meteor-contest 
PyPy0.670.6780,9721485  4% 0% 1% 99% 0% 4% 0% 0%
No program
 chameneos-redux
   No programs
 binary-trees-redux
   No programs

† possible mismatch - one-core program compared to multi-core program.

 4 : Are there other PyPy programs for these benchmarks?

Remember - those are just the fastest PyPy and Numba programs measured on this OS/machine. Check if there are other implementations of these benchmark programs for PyPy.

Maybe one of those other PyPy programs is fastest on a different OS/machine.

 5 : Are there other faster programs for these benchmarks?

Remember - those are just the fastest PyPy and Numba programs measured on this OS/machine. Check if there are faster implementations of these benchmark programs for other programming languages.

Maybe one of those other programs is fastest on a different OS/machine.

 PyPy : the old PyPy 

Revised BSD license

  Home   Conclusions   License   Play