The Computer Language
23.03 Benchmarks Game

C++ g++ versus Python 3 fastest performance

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
C++ g++ #6 3.23 10,936 1528 12.80
C++ g++ #7 14.04 10,912 1150 14.04
C++ g++ #5 7.99 10,936 980 31.23
C++ g++ #3 36.06 10,908 593 36.05
C++ g++ #2 9.51 10,912 1440 37.33
C++ g++ #4 9.82 10,912 1439 38.52
C++ g++ 10.39 10,912 1059 40.77
Python 3 #6 913.87 11,080 385 913.83
Python 3 #4 285.20 14,264 950 1,123.47
n-body
source secs mem gz cpu secs
C++ g++ #0 2.14 10,960 1927 2.14
C++ g++ #2 4.44 10,960 1879 4.44
C++ g++ #7 4.44 10,960 1808 4.44
C++ g++ #9 4.88 10,960 1530 4.88
C++ g++ #4 5.44 10,960 1428 5.44
C++ g++ #6 5.70 10,960 1668 5.70
C++ g++ #3 5.76 10,960 1396 5.76
C++ g++ 5.97 10,960 1659 5.97
C++ g++ #8 6.53 10,960 1517 6.53
C++ g++ #5 6.89 11,016 1538 6.88
Python 3 383.12 11,096 1196 383.11
Python 3 #2 402.59 11,096 1242 402.57
spectral-norm
source secs mem gz cpu secs
C++ g++ #6 0.71 10,984 1044 2.84
C++ g++ #5 1.32 10,984 1044 5.25
C++ g++ 5.36 10,984 452 5.36
C++ g++ #8 1.52 10,992 1278 6.09
Python 3 #8 78.36 15,704 407 311.22
Python 3 #6 315.69 11,200 328 315.68
Python 3 #7 89.17 15,516 417 352.71
mandelbrot
source secs mem gz cpu secs
C++ g++ 0.89 34,012 1791 3.46
C++ g++ #4 0.88 34,664 3542 3.48
C++ g++ #6 0.98 34,768 1002 3.88
C++ g++ #0 2.34 34,204 2739 9.28
C++ g++ #8 4.78 34,288 742 13.11
C++ g++ #5 13.35 33,504 590 13.35
C++ g++ #9 3.50 34,292 726 13.49
C++ g++ #7 3.49 34,304 1017 13.89
C++ g++ #2 16.91 34,008 692 16.90
C++ g++ #3 28.09 10,956 414 28.09
Python 3 #7 155.28 14,244 688 616.01
Python 3 #2   Timed Out  
Python 3 #5   Failed  
pidigits
source secs mem gz cpu secs
C++ g++ #5 0.87 10,956 798 0.87
C++ g++ #4 0.89 10,956 513 0.88
Python 3 #3 1.25 13,564 567 1.25
Python 3 #5 1.39 11,428 363 1.39
Python 3 #4 4.21 11,096 342 4.21
regex-redux
source secs mem gz cpu secs
C++ g++ #6 1.13 275,984 2850 2.18
Python 3 #2 1.38 168,144 1403 2.65
C++ g++ 3.55 211,848 656 3.55
C++ g++ #2 2.83 212,460 700 3.59
C++ g++ #5 3.78 215,276 852 4.49
Python 3 8.02 460,684 512 14.90
C++ g++ #3 13.26 217,376 853 19.13
C++ g++ #4   Make Error  
fasta
source secs mem gz cpu secs
C++ g++ #8 0.77 10,944 2751 1.52
C++ g++ #2 1.87 10,940 1127 1.86
C++ g++ 1.96 10,936 1057 1.96
C++ g++ #3 2.64 10,940 1307 2.64
C++ g++ #4 3.34 10,940 1287 3.34
C++ g++ #5 1.04 10,940 2344 3.66
C++ g++ #6 1.03 10,936 2324 3.83
Python 3 #2 49.99 11,088 1121 49.99
Python 3 #3 50.28 11,088 1003 50.27
Python 3 58.84 11,092 817 58.84
Python 3 #5 33.40 827,232 1947 61.49
C++ g++ #7   Make Error  
k-nucleotide
source secs mem gz cpu secs
C++ g++ #2 1.96 156,360 1631 5.87
C++ g++ #3 4.16 165,784 1276 13.84
C++ g++ 6.80 756,220 1446 14.43
Python 3 #3 44.13 262,348 1967 165.01
Python 3 58.56 379,464 607 211.98
Python 3 #8 69.21 505,836 655 214.24
reverse-complement
source secs mem gz cpu secs
C++ g++ #2 0.68 499,568 2093 0.68
C++ g++ #6 3.03 1,515,936 1832 4.05
Python 3 #3 4.96 508,412 796 4.95
C++ g++ 6.35 979,820 592 6.35
Python 3 #5 3.72 1,500,212 954 6.76
Python 3 8.53 1,986,544 479 8.53
Python 3 #2 8.58 1,788,056 434 8.58
Python 3 #6 6.17 2,484,084 814 9.23
Python 3 #4 12.04 4,002,656 335 12.04
C++ g++ #5 35.73 771,156 720 35.72
C++ g++ #3   Bad Output  
binary-trees
source secs mem gz cpu secs
C++ g++ #7 0.94 201,600 890 3.31
C++ g++ #5 1.13 200,428 885 4.05
C++ g++ #9 1.45 135,832 809 4.10
C++ g++ #6 1.80 265,520 844 4.39
C++ g++ #3 1.80 265,092 945 4.69
C++ g++ #8 2.14 265,536 820 5.12
C++ g++ 2.65 1,946,308 754 9.06
C++ g++ #2 23.13 265,616 508 23.13
Python 3 #2 104.73 271,980 338 104.72
Python 3 #5 35.33 274,884 660 125.79
Python 3 #4 34.53 276,752 472 125.93
Python 3 35.93 276,952 589 126.44
Python 3 #3 50.99 672,016 1238 142.94
C++ g++ #4   Make Error  
C++ g++

Ubuntu 12.2.0-3ubuntu1

Python 3

Python 3.11.1