Python 3 vs Java - Which programs are fastest? (Benchmarks Game)

The Computer Language
24.06 Benchmarks Game

Python 3 versus Java fastest performance

How the programs are written matters! Always look at the source code.

If the fastest programs are hand-written vector instructions, does the host language matter? You might be more interested in the less optimised programs — more seconds, less gz source code.

fannkuch-redux
source secs mem gz cpu secs
Java #3 40.17 42,908 1264 40.27
Java 10.98 43,096 1289 43.08
Java #2 46.46 40,772 520 46.52
Python 3 #6 895.57 19,652 391 895.53
Python 3 #4 291.14 19,652 960 1,150.83
n-body
source secs mem gz cpu secs
Java #5 6.79 41,548 1435 6.83
Java #4 6.91 41,168 1495 6.94
Java #2 7.58 41,460 1430 7.62
Java #3 7.63 41,452 1436 7.67
Java 7.89 41,464 1437 7.93
Python 3 354.45 19,652 1201 354.43
Python 3 #2 360.53 19,652 1247 360.52
spectral-norm
source secs mem gz cpu secs
Java #3 1.68 42,924 762 6.37
Java 7.08 42,364 521 7.15
Java #2 2.44 41,988 956 9.44
Python 3 #7 85.35 19,660 425 338.99
Python 3 #6 343.12 19,660 334 343.11
Python 3 #8 89.19 19,660 415 354.24
mandelbrot
source secs mem gz cpu secs
Java #2 4.14 81,668 802 16.25
Java #4 4.44 104,696 667 16.25
Java #6 4.31 81,888 808 16.97
Java 25.75 41,428 671 25.81
Java #3 7.42 81,216 910 29.33
Python 3 #7 158.82 19,652 698 634.14
Python 3 #3 813.16 19,652 319 813.13
Python 3 #2 212.22 102,584 790 846.26
Python 3 #5 247.80 19,652 463 989.79
pidigits
source secs mem gz cpu secs
Java #3 0.94 40,944 770 0.96
Python 3 #3 1.33 19,652 573 1.33
Java #2 1.35 44,528 944 1.42
Python 3 #4 4.61 19,652 348 4.61
Java 7.63 491,600 807 8.66
Python 3 #5   Failed  
regex-redux
source secs mem gz cpu secs
Python 3 #2 1.35 168,036 1411 2.63
Python 3 8.84 432,748 515 16.23
Java 8.47 662,708 875 16.79
Java #6 5.59 1,235,356 746 17.14
Java #3 5.25 629,428 935 17.37
fasta
source secs mem gz cpu secs
Java #4 3.16 42,812 1528 3.27
Java #6 1.18 48,364 2549 3.74
Java #5 1.26 48,824 2478 4.17
Java #2 4.39 47,624 1259 4.56
Python 3 #2 37.94 19,652 1126 37.94
Python 3 #3 38.31 19,652 1007 38.30
Python 3 #5 28.13 827,220 1951 55.72
Python 3 57.01 19,652 823 57.01
k-nucleotide
source secs mem gz cpu secs
Java 5.02 369,032 1821 16.31
Java #3 7.26 365,384 1642 25.09
Java #6 7.26 365,680 1614 25.28
Java #4 34.70 195,564 1887 35.08
Java #5 20.44 218,932 2225 44.56
Python 3 #3 50.62 262,400 1970 193.35
Python 3 #8 73.69 506,368 663 226.37
Python 3 #9 63.78 379,776 614 228.11
Python 3 232.37 499,456 499 231.68
reverse-complement
source secs mem gz cpu secs
Java #6 3.40 2,031,576 760 4.06
Python 3 #3 4.82 508,760 803 4.82
Java #5 4.78 1,096,264 1115 4.92
Java #4 5.59 1,890,020 656 5.71
Java #7 23.61 1,036,152 1654 6.24
Python 3 #5 4.03 1,500,508 960 7.30
Python 3 #2 10.13 1,788,624 440 10.12
Python 3 10.36 1,986,924 484 10.36
Python 3 #6 7.71 2,484,208 821 11.18
Python 3 #4 13.85 4,003,072 343 13.85
Java #3   Bad Output  
Java #8   Bad Output  
binary-trees
source secs mem gz cpu secs
Java #4 4.46 1,957,564 846 5.19
Java #3 4.90 2,032,184 546 5.67
Java #6 5.02 2,065,280 535 5.79
Java #2 5.11 2,064,188 558 5.83
Java #7 2.59 1,718,620 841 8.08
Python 3 #2 105.82 272,384 344 105.81
Python 3 #5 34.55 274,944 669 123.08
Python 3 35.50 277,632 597 126.38
Python 3 #4 34.68 277,504 481 127.31
Python 3 #3 49.75 672,384 1247 143.18
Python 3

Python 3.12.3

Java

java 22 2024-03-19
Java HotSpot(TM) 64-Bit Server VM
(build 22+36-2370,
mixed mode, sharing)