The Computer Language
24.04 Benchmarks Game

Ruby versus PHP 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
PHP #2 188.01 19,392 447 188.00
PHP #3 54.65 19,392 1166 217.72
PHP #4 55.26 19,520 1168 219.72
PHP 225.18 19,392 488 225.17
Ruby #2 139.77 21,120 1462 536.11
Ruby 1,380.34 20,992 391 1,380.29
n-body
source secs mem gz cpu secs
PHP #3 66.45 19,396 1088 66.43
Ruby #3 188.71 21,248 1169 188.71
Ruby #2 215.31 21,248 1143 215.31
spectral-norm
source secs mem gz cpu secs
PHP 6.85 19,396 1157 27.12
PHP #2 56.73 19,396 403 56.73
PHP #3 16.19 19,396 1214 63.39
Ruby 126.55 22,144 299 126.54
Ruby #4 129.16 22,912 333 129.16
Ruby #5 64.82 27,520 764 236.48
mandelbrot
source secs mem gz cpu secs
PHP 86.84 19,396 452 86.84
PHP #3 23.33 48,384 881 92.86
Ruby #5 151.07 86,272 978 603.13
Ruby #4 661.22 136,132 862 661.94
Ruby #2 259.17 94,336 887 1,034.44
Ruby #3 1,538.89 21,120 313 1,538.80
Ruby #6   Failed  
Ruby #7   Failed  
pidigits
source secs mem gz cpu secs
PHP #5 1.02 19,396 405 1.02
PHP #4 1.04 19,396 396 1.04
PHP #3 1.05 19,396 510 1.04
PHP #2 1.47 19,396 552 1.46
Ruby #5 1.56 850,304 494 1.55
Ruby #2 3.22 2,271,624 666 3.22
Ruby 16.56 104,192 524 16.55
PHP 330.35 19,396 756 330.33
regex-redux
source secs mem gz cpu secs
PHP 1.87 194,876 822 3.72
Ruby #2 23.19 216,576 444 23.19
Ruby #3 11.84 216,576 730 24.21
Ruby #9 30.10 216,576 327 30.09
fasta
source secs mem gz cpu secs
PHP #3 21.34 19,396 1065 21.33
Ruby #6 23.07 120,064 1070 23.07
PHP #2 28.90 19,396 1054 28.90
Ruby #3 35.52 120,064 1004 35.52
Ruby #5 91.70 22,784 1000 91.69
Ruby #2 93.97 147,548 747 93.97
Ruby #4 95.74 266,496 864 95.73
k-nucleotide
source secs mem gz cpu secs
PHP #4 20.89 260,560 1084 69.85
Ruby #7 256.92 393,216 792 255.31
Ruby #2 255.78 181,700 426 255.60
Ruby #3 272.84 203,672 546 273.06
Ruby 84.88 172,436 583 300.65
reverse-complement
source secs mem gz cpu secs
PHP 9.76 1,489,428 323 9.76
Ruby #5 10.77 1,624,300 301 10.76
PHP #2 11.67 1,787,276 288 11.67
PHP #3 7.59 536,536 452 11.93
Ruby #4 6.88 2,510,956 608 12.51
Ruby #3 9.57 4,232,604 490 17.72
Ruby #2 24.46 1,001,852 272 24.46
Ruby 18.75 5,147,124 521 36.24
binary-trees
source secs mem gz cpu secs
PHP #3 45.78 921,600 434 45.78
Ruby #4 46.87 478,848 371 46.86
Ruby 48.73 478,976 383 48.72
Ruby #2 48.78 478,976 385 48.76
Ruby #3 50.16 515,924 407 50.14
Ruby #5 18.96 521,984 1016 53.93
PHP #7 15.25 948,480 767 54.73
PHP #4 18.02 918,400 786 55.68
PHP 62.31 748,808 457 62.30
PHP #2 62.55 748,812 429 62.54
PHP #5 32.58 805,504 1048 83.64
PHP #6 26.90 805,396 877 88.00
Ruby

ruby 3.3.0
(2023-12-25
revision 5124f9ac75)
+YJIT [x86_64-linux]

PHP

PHP 8.3.3 (cli)
(built: Mar 3 2024 08:47:21) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.3.3,
with Zend OPcache v8.3.3,
Copyright (c) Zend Technologies