(Chapters 1 dan 2)
1
Objektif (4/6) Objektif (5/6)
• Pengukuran desain dan eksperimen simulasi untuk • Melakukan simulasi dengan benar
menghasilkan informasi dengan usaha yg sedikit. – Pilih bahasa yg tepat, Select correct language,
– Terkadang banyak faktor yg mempegaruhi kinerja. mulai untuk random numbers, lamanya simulasi,
Memisahkan efek dari problem individual. dan analisa
• Contoh: Kinerja sistem tergantung dari tiga faktor: – Sebelum itu semua, mungkin perlu untuk
– A) teknik garbage collection: G1, G2 tidak ada memvalidasi simulator
– B) tipe workload: editing, compiling, AI • Contoh: Untuk membandingkan kinerja dua
– C) Tipe CPU: P2, P4, Sparc algoritma replacement cache:
Bewrapa eksperimen yg dibutuhkan? Bagaimana kinerja – A) berapa lama simulasi seharusnya
dari tiap faktor dapat diestimasi? dijalankan?
– B) apa yg dapat dilakukan untuk mendapatkan
akurasi yg sama dengan simulasi yg lebih
singkat?
2
Contoh: Membandingkan Dua Sistem Permainan Rasio
• Dua sistem, dua workload, ukuran: transaksi • Mengambil sistem B sebagai basis
per detik
3
Outline Pendekatan Sistimatik
• Objektif (sudah) 1. Nyatakan goal dan tentukan batas
• Seni (sudah) 2. Pilih metrik kinerja
• Kesalahan Umum (sudah) 3. List parameter sistem dan workload
• Pendekatan Sistimatik (berikut) 4. Pilih faktor dan nilai
• Studi Kasus 5. Pilih teknik evaluasi
6. Pilih workload
7. Eksperimen desain
8. Analisa dan interpretasi data
9. Berikan hasil. Ulangi.
4
Pilih Tekni Evaluasi Pilih Workload
• Tergantung dari waktu, resources dan level • Tentukan service yg diminta sistem
akurasi yang diinginkan • Tergantung dari teknik pengukuran
• Pemodelan Analitik – Model analitik dapat memiliki probabilitas
– Cepat, keakuratan lebih rendah berbagai request
• Simulasi – Simulasi dapat memiliki kesamaan
– Usaha medium, akurasi medium permintaan dari real system
• Pengukuran – Pengukuran mungkin memiliki scripts yang
menganggu transaksi
– Umumnya usahanya besar, akurasi tinggi
• Catatan, semua diatas tipikal tetapi dapat • Seharusnya representatif untuk real life
kebalikannya di kasus tertentu!
5
Studi Kasus Definisi Sistem
• Remote pipes (rpipe) versus remote • Client, Server dan Network
procedure calls (rpc) • Komponen kunci “channel”, baik rpipe atau rpc
– rpc seperti procedure call tetapi ditangani
pada server remote – Hanya subset client dan server yang menangani
channel yang merupakan bagian dari sistem
• Client caller tertahan sampai return
– rpipe seperti pipe tetapi server
mendapatkan output pada mesin remote
• Proses client dapat berlanjut, non-blocking Client Network Server
• Goal: studi kinerja aplikasi menggunakan
rpipe dan aplikasi menggunakan rpc
Service Metrik
• Ada beberapa service yang dapat terjadi • Batasi metrik untuk operasi yg benar saja
menggunakan rpipe atau rpc (tdk ada failure atau errors)
• Pilih transfer data sebagai yang umum, • Pelajari rate service dan konsumsi
dengan data sebagai hasil tipikal untuk resource
kebanyakan interaksi cleint-server A) elapsed time per call
• Menentukan jumlah data besar atau kecil B) maximum call rate per unit waktu
• Maka, dua service: C) Waktu CPU lokal per call
– Transfer data kecil D) Waktu CPU remote per call
– Transfer data besar E) Jumlah byte terkirim per call
Parameter
Factor Kunci
Sistem Workload
• Kecepatan CPU • Waktu antar calls • Tipe kanal channel
– Local • Jumlah dan Ukuran – rpipe atau rpc
•
– Remote
Network
– parameter
– hasil
• Kecepatan network
– Kecepatan • Tipe channel
– Pilih dekat (LAN) lintas negara (WAN)
– Reliabilitas (retrans) – rpc • Ukuran parameter
• Operating system – Rpipe – Kecli atau besar
overhead • Load lain • Banyaknya call
– Untuk interfacing – Pada CPU
dengan channel – 11 nilai: 8, 16, 32 …1024
• Parameter lainnya adalah tetap
– Pada network
– Untuk interfacing
dengan network
• (Cat, coba jalankan saat load network “ringan”)
6
Teknik Evaluasi Workload
• Selama tidak ada prototipe, gunakan • Program sintetik yg digenerasi menentukan
pengukuran request dari channel
• Gunakan pemodelan analitik berdasarkan • Juga memonitor resource yg dikonsumsi
pada data terukur untuk nilai diluar dan me-log hasil
jangkauan eksperimen yang dilakukan • Gunakan request channel “null” untuk
mendapatkan resource baseline yg
dikonsumsi oleh logging
– (Ingat prinsip Heisenberg!)