Archive

Archive for the ‘Benchmark’ Category

Benchmark XCache

March 31st, 2008

Di blogdetik.com sudah terinstall xcache. Cuman waktu itu gak ngeliat performance enhancement yang significant. Karena lagi nganggur, coba-coba testing lagi pake ab dengan jumlah request 100000 dan konkurensi 1. Konkurensi gak diset banyak, karena memang buat ngecek dari sisi loading script php-nya aja, apa bener sih opcode cache benar-benar bekerja maksimal. Waktu pertama ditest tanpa xcache, memori yang dikonsumsi webserver hanya 9-10Mbs (php-cgi). Hasil benchmark ab-nya:

Concurrency Level:      1
Time taken for tests:   12344.642804 seconds
Complete requests:      100000
Failed requests:        0
Write errors:           0
Total transferred:      1460381792 bytes
HTML transferred:       1398600000 bytes
Requests per second:    8.10 [#/sec] (mean)
Time per request:       123.446 [ms] (mean)
Time per request:       123.446 [ms] (mean, across all concurrent requests)
Transfer rate:          115.53 [Kbytes/sec] received

Sedangkan kalo dipasang xcache, memori yang dikonsumsi webserver 12-22Mb (php-cgi). Hasil benchmark-nya:

Concurrency Level:      1
Time taken for tests:   5754.861240 seconds
Complete requests:      100000
Failed requests:        0
Write errors:           0
Total transferred:      1460381652 bytes
HTML transferred:       1398600000 bytes
Requests per second:    17.38 [#/sec] (mean)
Time per request:       57.549 [ms] (mean)
Time per request:       57.549 [ms] (mean, across all concurrent requests)
Transfer rate:          247.82 [Kbytes/sec] received

admin Benchmark, Server

Pake tcp loopback lebih cepet daripada unix socket… kok bisa

March 31st, 2008

Kalo dipikir-pikir, secara teori sih kecepatan transfer antara tcp dan unix socket, masih cepetan unix socket. Abis liat blog orang tentang perbandingan pake socket sama pake tcp, juga membuktikan kalo socket lebih cepat (di comment juga ada yang bilang sebaliknya). Aku coba buat konfigurasi yang sama untuk Nginx (nambah directive upstream dengan masing-masing unix socket yang di-create), dan merubah sedikit file cgi_main.c (php-5.2.5/sapi/cgi), dengan begitu instance child yang di-create akan mempunyai unix socket sendiri. Sebenarnya bisa dibuat instance php-cgi sendiri-sendiri sejumlah yang kita inginkan, terlepas dari cara spawn dari parent sejumlah PHP_FCGI_CHILDREN. Namun aku pikir nantinya akan ada masalah dengan modul xcache, karena xcache sharing opcode cache-nya pake shared memory file yang hanya bisa diliat di anak-anaknya php-cgi. Ya sudah, terpaksa ubah-ubah sedikit source php :( cgi_main.patch.

Dan ternyata hasilnya masih mengecewakan, gak ada penambahan performance, justru ada beberapa request dari hasil benchmark pakai ab yang failed. Yah….. gak sesuai harapan deh. Gak papa lah, paling gak hasil sedikit kerja bisa ada manfaatnya. Jadi kesimpulannya, pakai tcp socket aja…… (hm.. kalo pake pipe lebih cepet gak ya :D )

admin Benchmark, Server

Benchmark Session store antara NFS dan Memcached

March 24th, 2008

Coba ngetes benchmark session store pake file dan memcached.
Konfigurasi:
- 2 webserver buat ngetes centralized session store
- 1 server server nfs/memcached buat simpan session

Test:
Dibuat tes skrip pake jmeter. Intinya skrip put text di salah satu server webserver, simpan sessionid, terus di-get diserver webserver lainnya pake sessionid yang tersimpan. Jika centralized session bekerja, maka hasil yang di-get harus sama dengan yang di-put. Ukuran text yang dikirim dibagi 3, untuk 100 bytes, 1Kb, 10Kb, 100Kb.
Untuk nfs, masing2 webserver mounting ke server nfs ke direktori yang sama. Untuk memcached, pake bawaan patch rep-memcached (untuk coba replication memcached), sekalian test performance jika replication bekerja. Skrip melakukan operasi put dan get sejumlah 1000 kali dengan konkurensi 20 client.

Result Benchmark Session Store

Result:
Hasilnya dapat dilihat di gambar. Untuk NFS, nfsd berjalan dengan 8 proses dengan masing-masing menghabiskan 20-25% CPU. Sedangkan memcached dengan 2 proses (satu sebagai replication slave) menghabiskan 20-70% CPU. CPU load tertinggi berada di sisi master, sedangkan slave hanya memakan 20%.
Untuk 100 – 10Kb, memcached lebih unggul hampir 2 kali lipat dibanding NFS disegi performance (requests/second). Kemungkinannya karena memang NFS harus menghabiskan banyak waktu disisi I/O untuk read/write, sedangkan memcached tidak melibatkan disk I/O karena data disimpan di memori. Diatas 10 Kb, memcached mengalami penurunan performance, menjadi sama dengan NFS. Setting chunk_size di php.ini untuk memcached sudah ditinggikan 128Kb, supaya pas dengan ukuran size text, hasilnya tetap, hanya sedikit meningkatkan performance. Tapi kalau dilihat-lihat jarang yang menyimpan data di session store lebih dari 100Kb.

Nih, file-file buat ngetestnya : Session Test.zip

admin Benchmark, Server

Perbandingan (kasar) performance VMWare Workstation 6.0 vs Virtual Box 1.4.0

June 18th, 2007

Oke, ini hasil iseng benchmark 2 Aplikasi Software Virtualisasi setelah membaca artikel yang serupa tentang perbandingan antara VirtualBox vs. Qemu vs. VMPlayer. Pada artikel tersebut sayangnya tidak disertakan instalasi add-on (Guest Addition) untuk VMWare. Jadinya penulis penasaran, bagaimana kalau disertakan add-on-nya. Disini penulis tidak mengikutkan qemu, karena setelah lihat diforum lain, kebanyakan masih sering ditemukan error.

INSTALASI

Masing-masing software di install di laptop dengan spesifikasi :

  • Prosesor Centrino Duo T2050 1.6 GHz
  • Memori 1 GB (2 keping 512 MB)
  • HD Seagate SATA 80 GB
  • VGA Intel 945GM

Berjalan di OS Mandriva 2007 PowerPack, pakai XWindows dengan Windows Manager Beryl. Software Virtualisasi yang dipakai adalah VMWare Workstation 6.0 build-45731 dan Virtual Box 1.4.0. Ini waktu testing perbandingan merupakan software versi terbaru.

KONFIGURASI

Untuk Guest OS, dipakai Windows XP Professional SP2. Aplikasi benchmark yang digunakan adalah FreshDevice Diagnose (seperti yang digunakan pada artikel yang dirujuk) dan PC Wizard 2007.

Untuk setting hardware virtual di VMWare mengikuti typical installation XP Pro dengan sedikit penambahan yang dirinci sebagai berikut:

  • Memori 256 MB.
  • Processors 1.
  • Hard Disk IDE 2 GB (auto-grow). Sebenarnya ingin menggunakan SCSI, karena menurut petunjuk dapat meningkatkan performance. Tetapi karena kendala dalam proses instalasinya, maka diset default ke IDE.
  • Ethernet Bridged.
  • Virtual Memory memakai Reserved Memory (tidak ada yang diswap).
  • Device lainnya diset present dan auto-detect.
  • 3D accelerator tidak dihidupkan. Karena memang tidak berjalan lancar di laptop penulis.

Sedangkan untuk Virtual Box:

  • Memori 256 MB.
  • Enable ACPI
  • Video Memory 8 MB
  • Hard Disk IDE 2 GB (auto-grow).
  • Host Networking.
  • Device lainnya diset present dan default.

Setelah Guest OS selesai diinstall pada masing-masing software virtual, langkah selanjutnya adalah menginstall add-on dari masing-masing paket software tersebut untuk meningkatkan performansinya. Selanjutnya diinstall software benchmark.

BENCHMARK

Pada saat proses benchmark, segala aplikasi yang berjalan di Host yang banyak berjalan di background, seperti beagle, dimatikan. Tidak lupa juga kondisi laptop harus sama saat dilakukan masing-masing benchmark. Prosesor pada laptop diset pada full performance. Kecepatannya akan stabil dikisaran 1.6 GHz. Sempat pada saat melakukan percobaan test kedua di Virtual Box, penulis lupa telah mematikan cooling pad pada laptop. Dan pada saat dilakukan benchmark prosesor, point yang diraih menurun sampai kurang lebih 600 point (Processor Benchmark di Freshdevice Diagnose).

Benchmark awal penulis memakai Freshdevice Diagnose yang berjalan di Windows Guest. Benchmark dilakukan 5 kali untuk masing-masing test, kemudian diambil nilai rata-ratanya.

Selama melakukan benchmark tersebut, pada saat dilakukan test pada network di Virtual Box 1.4.0, penulis menemui beberapa kali BSOD. Kemungkinannya driver untuk virtual network card bermasalah. Penulis hanya mengambil point yang berhasil tanpa BSOD. Namun selang dua kali test, kembali lagi terjadi BSOD. :(

Begitu juga saat HD Benchmark, baik VMWare dan Virtual Box mengalami kegagalan untuk yang pertama kali. Setelah dilakukan test ke-2 dan seterusnya berjalan normal. Ini kemungkinan karena masing-masing HD diset auto-grow. Sehingga pada saat pertama kali, software benchmark ini mendeteksi bahwa free space-nya tinggal sedikit. Saat selesai test awal, penulis melihat bahwa ukuran Virtual HD mengembang setelah waktu awal instalasi hanya memakan 1 GB, sekarang menjadi 1.7 GB.

Test benchmark kedua menggunakan PC Wizard 2007. Selama proses test, tidak terjadi masalah apapun. Lancar-lancar aja.

VMWare vs VirtualBox

KESIMPULAN

Dari hasil perbandingan antara VMWare dan Virtual Box ini tidak terlalu signifikan selisih pointnya. Hanya untuk Display Adapter dan Network Benchmark di Virtual Box agak terpaut jauh. Mungkin karena masalah di driver network milik Virtual Box. Dan juga untuk Display Adapter milik VMWare memang lebih unggul, karena memang pada saat ini di desain untuk mendukung aplikasi 3D (walaupun masih dalam tahap Beta).

Kalau menurut penulis, Virtual Box ini merupakan alternatif yang baik sebagai pengganti VMWare Workstation. Karena memang free untuk personal (ada juga versi open source-nya) dan performance-nya tidak terpaut jauh. Pada point tertentu pada benchmark malahan dapat mengungguli beberapa point lebih tinggi daripada VMWare. Ukuran installernya juga beda jauh. Virtual Box hanya memakan 14 MB, sedangkan VMWare Workstation bisa mencapai 190 MB.

Namun juga karena pengembangannya yang masih baru, kestabilannya masih dipertanyakan. Kalau VMWare memang sudah terjun lama di kancah per-virtual-an. Driver-driver yang jalan di Guest OS dipastikan berjalan stabil.

Seiring dengan waktu, karena didukung lisensi yang tidak tertutup (closed source), dan forum komunitas yang berjalan, penulis yakin Virtual Box dapat berjalan lebih stabil.

admin Benchmark