From 1fb29549a657077c42d7eb3ca8b344521f07a344 Mon Sep 17 00:00:00 2001 From: Roshan Choudhary Date: Thu, 10 Apr 2025 16:28:38 +0530 Subject: [PATCH 1/3] Update code.php --- loops/php/code.php | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/loops/php/code.php b/loops/php/code.php index 8b036c45..63e7f311 100644 --- a/loops/php/code.php +++ b/loops/php/code.php @@ -1,12 +1,18 @@ Date: Sun, 18 May 2025 17:34:54 +0200 Subject: [PATCH 2/3] mt_rand is 4 times faster As the bench measure all the time (create array, loop, ...) need to be faster. --- loops/php/code.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/loops/php/code.php b/loops/php/code.php index 63e7f311..50d3762e 100644 --- a/loops/php/code.php +++ b/loops/php/code.php @@ -4,7 +4,7 @@ function main(int $u) { - $r = rand(0, 10000); # Get a random number 0 <= r < 10k + $r = mt_rand(0, 10000); # Get a random number 0 <= r < 10k $a = array_fill(0, 10000, 0); # Array of 10k elements initialized to 0 for ($i = 0; $i < 10000; $i++) { # 10k outer loop iterations for ($j = 0; $j < 100000; $j++) { # 100k inner loop iterations, per outer loop iteration From 00a32b4f2f1c06a45f11a607c0103769070b2538 Mon Sep 17 00:00:00 2001 From: Joan Miquel Date: Mon, 19 May 2025 11:28:25 +0200 Subject: [PATCH 3/3] Use faster SplFixedArray instead of array_fill It's a lot of faster. --- loops/php/code.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/loops/php/code.php b/loops/php/code.php index 50d3762e..698ef707 100644 --- a/loops/php/code.php +++ b/loops/php/code.php @@ -5,7 +5,7 @@ function main(int $u) { $r = mt_rand(0, 10000); # Get a random number 0 <= r < 10k - $a = array_fill(0, 10000, 0); # Array of 10k elements initialized to 0 + $a = new SplFixedArray(10000); # Array of 10k elements initialized to 0 for ($i = 0; $i < 10000; $i++) { # 10k outer loop iterations for ($j = 0; $j < 100000; $j++) { # 100k inner loop iterations, per outer loop iteration $a[$i] += $j%$u; # Simple sum