PHP Benchmarks

Performance comparison of PHP code alternatives.

Test: recurison vs. not (trivial)

What is the cost of a recursive algorithm vs. a non-recursive one?

Run this test again Return to test menu

Historical Results

Based on (2) saved test runs, The test labeled "recursive" was (on average) the faster by 0.0018 seconds, (0.295% faster)

recursive 100%
non-recursive 99.705%

The recursive test took 0.6224 seconds.
The non-recursive test took 0.6243 seconds.

Nitty-Gritty

Each test case ran 20 random code order iterations consisting of 137,898 loops for a total of 2,757,960 runs.

  • Line execution difference (0.000001) milliseconds.
  • Avg difference (0.000) milliseconds per 137,898 loops.
  • Total difference 1.84 milliseconds for 2,757,960 loops

The iteration variablity for Code 1 was (0.0000) milliseconds and Code 2 was (0.0000) milliseconds. The lower and the closer together there values are the more accurate the results are.

Code

The first test, "non-recursive", was:

/*
function recurse_not($i)
{
	$result = 0;

	while ($i > 0)
	{
		$result += $i;
		$i -= 5;
	}

	return $result;
}
*/

$result = recurse_not(5000);

The second test, "recursive", was:

/*
function recurse_normal($i)
{
	if ($i > 0)
		return $i + recurse_normal($i - 5);
	else
		return 0;
}
*/

$result = recurse_normal(5000);

Running: Linux (x86_64:1 GB) PHP (7.2.25-1+ubuntu16.04.1+deb.sury.org+1)