Cara Mengetahui Lama Eksekusi (Execution Time) Sebuah Script PHP

Dalam artikel kali ini, saya akan mencoba memaparkan cara mengetahui lama eksekusi atau istilah kerennya Execution Time dari sebuah script PHP.

Execution time ini penting bagi Anda yang ingin mengetahui kinerja sebuah script. Dari execution time ini, Anda dapat menilai apakah sebuah script entah yang Anda buat sendiri atau sekedar copy paste memiliki kompleksitas yang tinggi atau tidak. Sebuah script dengan tingkat kompleksitas tinggi biasanya ditandai dengan execution time yang besar pula. Semakin rendah execution time berarti tingkat kompleksitasnya rendah, dengan demikian semakin baik script tersebut. Namun kebalikannya, jika script Anda execution timenya besar maka kemungkinan memiliki tingkat kompleksitas yang besar pula, dan …. menjadi tugas Anda untuk memikirkan algoritma lain atau menyederhanakan algoritma script tersebut supaya lebih simpel. He… 3x ternyata tidak gampang ya menjadi seorang programmer.


OK… untuk mengetahui lama eksekusi sebuah script, memanfaatkan function microtime() yang berfungsi untuk mencatat timestamp UNIX dalam satuan microsecond. Function ini kita letakkan di awal script dan di akhir script. Tujuan dari meletakkan microtime() di awal script adalah untuk mencatat timestamp sebelum script dieksekusi dan tujuan meletakkan microtime() di akhir script adalah untuk mencatat timestamp setelah script dijalankan. Nah… lamanya eksekusi script berarti diperoleh dengan mencari selisih timestamp di akhir script dengan timestamp di awal script.

Berikut ini template script untuk mengetahui execution time dari sebuah script dengan microtime().

<?php

$awal = microtime(true);

// proses
// proses
// proses

$akhir = microtime(true);
$lama = $akhir - $awal;
echo "Lama eksekusi script adalah: ".$lama." microsecond";
?>

Keterangan:
Function microtime(true) akan menghasilkan nilai float yang menyatakan UNIX timestamp dalam microseconds.

Adapun contoh penerapannya adalah sebagai berikut.
<?php

$awal = microtime(true);

// --- bagian yang akan dihitung execution time --

$bil = 2;
$hasil = 1;
for ($i=1; $i<=10000000; $i++)
{
     $hasil .= $bil;
}

// --- bagian yang akan dihitung execution time --

$akhir = microtime(true);
$lama = $akhir - $awal;
echo "

Lama eksekusi script adalah: ".$lama." detik

"; ?>

Script di atas digunakan untuk mencatat execution time dalam mencari hasil dari 210.000.000. Ketika script dijalankan pada komputer saya (RAM 1 GB, prosesor Intel Pentium Dual Core), execution time menunjukkan sekitar 3.81649 detik.






Untuk komputer lain, bisa jadi execution time ini lebih kecil atau lebih besar dikarenakan kemampuan CPU setiap PC berbeda-beda. Semoga artikel ini bermanfaat bagi Anda yang mau menganalisis script buatan sendiri ya… Nantikan artikel selanjutnya dalam blog ini.

Silakan Berikan Komentar anda yang bisa mendukung blog ini, komentar anda saya harapkan, terima kasih
EmoticonEmoticon