Anda di halaman 1dari 7

Buku Acuan

• Raj Jain. The Art of Computer Systems


Performance Analysis: Techniques for
Experimental Design, Measurement, Simulation,
Analisa Kinerja Sistem and Modeling, John Wiley and Sons, Inc., New
York, NY, 1991.
• David J. Lilja. Measuring Computer Performance: A
Practitioner's Guide, Cambridge University Press,
New York, NY, 2000
• Douglas C. Montgomery. Design and Analysis of
Experiments, 5th Edition, Wiley Text Books, June
Pendahuluan 30, 2000

(Chapters 1 dan 2)

Outline Objektif (1/6)


• Objektif (berikut)
• Memilih teknik evaluasi, metrik kinerja dan
workload untuk sistem yang tepat.
• Seni – Teknik: pengukuran, simulasi dan pemodelan analitik
• Kesalahan Umum – Metrik: kriteria untuk studi kinerja (mis: waktu

• Pendekatan Sistimatik respons)


– Workloads: permintaan dari user/aplikasi terhadap
• Studi Kasus sistem
• Contoh: Metrik kinerja apa yang seharusnya
digunakan untuk sistem berikut?
– a) Dua disk drives
– b) Dua sistem pemrosesan transaksi
– c) Dua algoritma retransmisi paket

Objektif (2/6) Objektif (3/6)


• Melaksanakan pengukuran kinerja dengan • Menggunakan teknik statistik yang sesuai untuk
membandingkan beberapa alternatif
benar
– Menjalankan satu workload terkadang tak mencukupi
– Membutuhkan dua tools: load generator dan • Banyak events komputer yg non-deterministik yang
monitor mempengaruhi kinerja

• Contoh: Workload mana yang tepat untuk


– Membandingkan beberapa workload yang berjalan
juga belum tentu mengarah kehasil yang benar
mengukur kinerja sistem berikut? • Khususnya jika variancenya tinggi
– a) Utilisasi pada LAN • Contoh: Packets lost pada link. Link mana yang
lebih baik?
– b) Waktu respons dari Web server File Size Link A Link B
– c) Kualitas audio dalam VoIP network 1000 5 10
1200 7 3
1300 3 0
50 0 1

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?

Objektif (6/6) Outline


• Menggunakan model antrian sederhana untuk • Objektif (sudah)
menganalisa kinerja sistem. • Seni (berikut)
• Terkadang dapat memodelkan sistem • Kesalahan Umum
komputer dengan rate service dan rate
kedatangan load
• Pendekatan Sistimatik
– Multiple servers
• Studi Kasus
– Multiple antrian
• Contoh:
– Untuk Web request rate tertentu, apakah
lebih efektif menggunakan 2 single-processor
Web servers atau 4 single-processor Web
servers?

Seni Evaluasi Kinerja Contoh: Membandingkan Dua Sistem


• Evaluasi tidak dapat dibuat secara mekanik • Dua sistem, dua workload, ukuran: transaksi
– Membutuhkan pengetahuan detail sistem per detik
– Pemilihan metodologi, workload, tools dgn
hati-hati Work- Work-
• Tidak ada satu jawaban yg benar, dua analyst Sistem load 1 load 2
kinerja dapat memilih metrik atau workload A 20 10
yang berbeda B 10 20
• Seperti seni, ada teknik yg dapat dipelajari:
– Bagaimana menggunakannya • Mana yang lebih baik?
– Kapan menerapkannya

2
Contoh: Membandingkan Dua Sistem Permainan Rasio
• Dua sistem, dua workload, ukuran: transaksi • Mengambil sistem B sebagai basis
per detik

Work- Work- Work- Work-


Sistem load 1 load 2 Average Sistem load 1 load 2 Average
A 20 10 15 A 2 0.5 1.25
B 10 20 15 B 1 1 1

• Keduanya sama baiknya! • A lebih baik!


• … tetapi apakah B lebih baik dari A?
• … tetapi apakah A lebih baik dari B?

Outline Kesalahan Umum (1/3)


• Objektif (sudah) • Goal Tidak Difinisikan
• Seni (sudah)
– Tidak ada untuk model general
– Deskripsikan goal dan mendesain eksperimen
• Kesalahan Umum (berikut) – (Jangan tembak dan kemudian gambar target)
• Pendekatan Sistimatik • Goal Bias
• Studi Kasus – Jangan tunjukkan sistem KITA lebih baik dari
MEREKA
– (Analisa Kinerja seperti Juri)
• Workload Tidak Representatif
– Seharusnya representatif dari bagaimana sistem
bekerja sesungguhnya
– Contoh: paket besar dan kecil? Jangan menguji
dengan besar atau kecil saja

Kesalahan Umum (2/3) Kesalahan Umum (3/3)


• Teknik Evaluasi Salah • Presentasi Hasil Tidak Tepat
– Gunakan yang paling sesuai: model, simulasi,
pengukuran – Ini bukan banyaknya grafik, tetapi
banyaknya grafik yang membantu
– (Jangan gunakan palu dan melihat semua
sebagai paku) pengambilan keputusan
• Level Detail Tidak Tepat • Mengabaikan Asumsi dan Limitasi
– Dapat lebih banyak! Mis: modeling disk – Mis: ,mengasumsikan kebanyakan traffic
– Dapat lebih sedikit! Mis: model analitik untuk TCP, dimana beberapa link memiliki traffic
congested router UDP yg signifikan
• Analisa Tidak Sensitif – Menerapkan hasil dimana asumsi yang tidak
– Analisa adalh bukti bukan kenyataan pasti
– Perlu menentukan sesensitif apa hasil di-set

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.

Nyatakan Goal dan Tentukan Batas Pilih Metrik


• Hanya dengan “mengukur kinerja” atau • Kriteria untuk membandingkan kinerja
“melihat bagaimana kerjanya” adalah terlalu • Secara umum, berhubungan dengan
umum kecepatan, akurasi dan/atau availabilitas
– Mis: goal adalah menentukan ISP mana yg pelayanan sistem
memberikan throughput lebih baik • Mis: kinerja network
• Definisi sistem dapat tergantung dari goal – Kecepatan: throughput dan delay
– Mis: jika mengukur kecepatan instruksi CPU, – Akurasi: error rate
sistem mungkin termasuk CPU + cache
– Availabilitas: paket data terkirim yang sampai
– Mis: jika mengukur waktu respons, sistem
mungkin termasuk CPU + memory + … + OS +
• Mis: kinerja prosesor
user workload – Kecepatan: waktu untuk mengeksekusi
instruksi

List Parameters Pilih Faktor untuk Studi


• List semua parameter yang mempengaruhi • Bagi parameter sesuai dengan apa yang
kinerja akan dipelajari dan yang mana yang tidak
• Parameter sistem (hardware and software) – Mis: Tipe CPU dpt bervariasi tapi OS tetap
– Mis: ukuran paket tetap tapi jumlah koneksi
– Mis: tipe CPU, tipe OS, … bervariasi
• Parameter workload • Pilih level yg sesuai untuk tiap faktor
– Mis: Jumlah user, tipe requests – Ingin tipikal dan yg secara potensial memiliki
• List mungkin tidak lengkap pada awalnya, high impact
maka miliki list kerja dan biarkan tumbuh – Untuk workload terkadang range lebih kecil
sesuai kemajuan. (1/2 atau 1/10th) dan lebih besar (2x atau
10x)
– Mulai dengan kecil atau sejumlah tertentu
dapat melampaui resource yg tersedia!

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!

Eksperimen Desain Analisa dan Intepretasi Data


• Ingin hasil maksimal dengan usaha minimal • Membandingkan alternatif
• Fase 1: • Memasukkan variabilitas hasil dalam
– Banyak faktor, level sedikit pertimbangan
– Melihat faktor mana yang penting – Teknik statistikal
• Fase 2: • Interpretasi hasil.
– Faktor sedikit, level lebih banyak – Analisa tidak menghasilkan kesimpulan
– Melihat jangkauan pengaruh untuk faktor – Beda analyst mungkin beda kesimpulan
tertentu

Tampilkan Hasil Outline


• Buat mudah untuk dipahami understood • Objektif (sudah)
• Grafik • Seni (sudah)
• Diseminasi (keseluruhan metodologi!) • Kesalahan Umum (sudah)

“Tugas scientist tidak hanya melihat: melihat,


• Pendekatan Sistimatik (sudah)
memahami dan mengkomunikasikannya. Mengabaikan • Studi Kasus (berikut)
salah satu fase ini kita bukanlah."

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

- Usahakan untuk meminimalkan efek dari


komponen diluar sistem

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!)

Desain Eksperimental Analisa Data


• Factorial penuh (semua kemungkinan • Analysis of variance akan digunakan untuk
kombinasi faktor) mengkuantifikasi tiga faktor pertama
• 2 channels, 2 kecepatan network, 2 ukuran, – Apakah mereka berbeda?
11 banyaknya call • Regresiakan digunakan untuk
– Æ 2 x 2 x 2 x 11 = 88 eksperimen mengkuantifikasi efek dan n call yg
konsekutif
– Kinerja linier? atau eksponensial?

Anda mungkin juga menyukai