Michael Save
12 years ago
1 changed files with 52 additions and 0 deletions
@ -0,0 +1,52 @@ |
|||
#!/usr/bin/php |
|||
<?php |
|||
/* |
|||
* benchmark.php - benchmarks thumbnailing methods |
|||
* |
|||
*/ |
|||
|
|||
require dirname(__FILE__) . '/inc/cli.php'; |
|||
require 'inc/image.php'; |
|||
|
|||
// move back to this directory |
|||
chdir(dirname(__FILE__)); |
|||
|
|||
if(count($argv) != 2) |
|||
die("Usage: {$argv[0]} [file]\n"); |
|||
|
|||
$file = $argv[1]; |
|||
$extension = strtolower(substr($file, strrpos($file, '.') + 1)); |
|||
$out = tempnam($config['tmp'], 'thumb'); |
|||
$count = 300; |
|||
|
|||
function benchmark($method) { |
|||
global $config, $file, $extension, $out, $count; |
|||
|
|||
$config['thumb_method'] = $method; |
|||
|
|||
printf("Method: %s\nThumbnailing %d times... ", $method, $count); |
|||
|
|||
$start = microtime(true); |
|||
for($i = 0; $i < $count; $i++) { |
|||
$image = new Image($file, $extension); |
|||
$thumb = $image->resize( |
|||
$config['thumb_ext'] ? $config['thumb_ext'] : $extension, |
|||
$config['thumb_width'], |
|||
$config['thumb_height'] |
|||
); |
|||
|
|||
$thumb->to($out); |
|||
$thumb->_destroy(); |
|||
$image->destroy(); |
|||
} |
|||
$end = microtime(true); |
|||
|
|||
printf("Took %.2f seconds (%.2f/second; %.2f ms)\n", $end - $start, $rate = ($count / ($end - $start)), 1000 / $rate); |
|||
|
|||
unlink($out); |
|||
} |
|||
|
|||
benchmark('gd'); |
|||
benchmark('imagick'); |
|||
benchmark('convert'); |
|||
|
Loading…
Reference in new issue