Anda di halaman 1dari 20

SISTEM KOMPUTER

Apa arti satu komputer lebih baik daripada yang lain? Meskipun ini hanya pertanyan sederhana, analogi penumpang pesawat akan memberi gambaran yang jelas. Tabel dibawah menunjukan tipikal pesawat penumpang, lengkap dengan data-data pendukung
pesawat Kapasitas penumpang Jarak tempuh (mil)
4630 4150 4000 8720

Kecepatah (mph)
610 610 1350 544

Keluaran (kapasitas x mph)


228.750 286.700 178.200 79.424

Boeing 777 375 Boeing 747 470 BAC/Sud Concorde Douglas DC-8-50 132 146

Jika ingin performa terbaik, terlebih dahulu harus jelas melihat definisi performa. Contoh, dengan pertimbangan perhitungan performa yang berbeda-beda, dapat dilihat pesawat tercepat adalah concorde, pesawat dengan jarak tempuh terjauh adalah DC-8 dan yang terbesar kapasitasnya adalah 747

Jika didefiniskan performa, maka didapatkan 2 kemungkinan. 1. Pesawat tercepat, didapatkan dari kecepatan tercepat, yang membutuhkan waktu tersingkat untuk memindahkan penumpang dari satu tempat ke tempat lain. 2. Pesawat dengan keluaran terbaik, dapat memindahkan banyak penumpang yang banyak, mis 450 orang. Dalam hal ini 747 adalah terbaik, ditunjukan oleh kolom terakhir dari tabel. Maka dapat dikatakan performa komputer dapat didefiniskan dengan berbagai cara

Jika dijalankan sebuah program pada 2 buah komputer, seringkali orang mengatakan bahwa yang tercepat adalah yang terlebih dahulu menghasilkan keluaran. Akan tetapi, pada sebuah pusat data yang memiliki banyak server yang menjalankan banyak program, yang diminta oleh banyak user, maka komputer terbaik adalah yang mampu melakukan seluruh pekerjaan sepanjang hari. Sebagai individu, yang dilakukan adalah mengurangi reponse time waktu antara memulai dan mengakhiri sebuah tugas yang dikenal juga sebagai execution time. Tetapi, manajer pusat data lebih tertarik untuk meningkatkan keluaran, throughput total jumlah

meningkatkan throughput. Maka pada kasus satu, performa kedua-duanya akan meningkat b) Pada kasus 2, tidak ada pekerjaan yang selesai lebih cepat, hanya throughput meningkat. Namun,jika permintaan pekerjaan bagi prosesor kedua sebesar throuhput, maka akan ada antrian. Pada kasus ini, meningkatkan throughput juga akan meningkatkan response waktu, namun mengurangi waktu tunggu di

Melakukan perubahan pada sistem komputer, apakah akan meningkatkan throuhput atau menurunkan response time atau kedua-duanya? Untuk: 1. Mengganti prosesor pada komputer dengan versi tercepat 2. Memberi prosesor tambahan pada sistem sehingga memiliki multiple prosesor untuk tugas yang a. berbeda? Menurunkan response time selalu

Berdasarkan hal tersebut, maka titik berat ada pada response waktu, dimana untuk memaksimalkan performa, maka harus diminimalisir response atau execution time. Sehingga untuk komputer x, hubungan performa dan execution time adalah

Ini berarti untuk 2 komputer, X dan Y, jika performa X lebih besar daripada performa Y, maka

Berarti execution time Y lebih lama daripada X, atu X lebih cepat n kali dari Y, sehingga

Jika komputer A menjalankan sebuah program dalam waktu 10 detik dan komputer B menjalankan program yang sama dalam waktu 15 detik, berapa kali lebih cepat A dibandingkan B? A akan lebih cepat n kali dibanding B jika

Sehingga rasio performa adalah

Sehingga A 1,5 kali lebih cepat daripada B

CPU execution time / CPU time: waktu yang

digunakan CPU untuk melakukan pekerjaan tertentu. User CPU time: CPU time yang dihabiskan pada program itu System CPU time: CPU time yang dihabiskan di operasi sistem untuk melakukan pekerjaan yang ditugaskan oleh program. Clock cycle: waktu prosesor yang berjalan secara konstan Clock period: panjang clock cycle/ waktu clock cycle untuk selesai Clock cycles per Instruction (CPI), jumlah rata-rata clock cycle yang dipakai oleh setiap instruksi. TUGAS Komputer C bekerja 4x lebih cepat daripada komputer B. Jika komputer B menjalankan sebuah aplikasi dalam waktu 28 detik, berapa lama waktu yang

CPU execution time


time untuk 1 program

= CPU clock cycle


untuk 1 program

X Clock cycle

Sebuah program memerlukan waktu ekseskusi 10 detik di komputer A, yang memiliki clock sebesar 4 GHz. Komputer B dirancang untuk menjalankan program selama 6 detik, dengan peningkatan clock rate. Tetapi peningkatan akan menyebabkan komputer B memerlukan waktu 1,2 kali lebih banyak dari clock cycle pada komputerA. Jadi berapa clock rate yang dibutuhkan oleh komputer B

Terlebih dahulu hitung clock cycle yang dibutuhkan oleh program pada komputer A

CPU time untuk B dapat dihitung menggunakan rumus

CPU

clock cycles cyle per instruksi

=Instruksi tiap program X rata-rata clock

Anggap kita memiliki 2 implementasi dari

arsitektur instruksi yang sama. Komputer A memiliki clock cycle time 250 ps dan CPI 2,0 untuk beberapa program. Komputer B memiliki clock cycle time 500 ps dan CPI 1,2 untuk program yang sama. Komputer mana yang lebih cepat dan seberapa cepat?
Kita tahu bahwa setiap komputer mengekseskusi jumlah

instruksi yang sama untuk program tersebut, sebut saja I. Pertama, cari jumlah clock cycle dari processor untuk setiap komputer.
clock cycles A =

CPU

CPU

I X 2,0 = I X 1,2

Sekarang kita akan menghitung waktu CPU untuk

setiap komputer
= CPU clock cycles A X Clock Cycle time A = I x 2,0 x 250 ps = 500 I ps CPU time B = CPU clock cycles B X Clock Cycle time B = I x 1,2 x 500 ps = 600 I ps Terlihat bahwa komputer A lebih cepat. Seberapa cepat? Lihat rasio execution time
time A

CPU

Berdasarkan hal ini dibuatlah rumus dasar performa

berdasar instruction count (jumlah instruksi yang dieksekusi oleh program), CPI dan clock cycle time CPU time = Instruction Count X CPI X Clock Cycle time

Terkadang, dapat dilakukan perhitungan CPU

clock cycle dengan melihat beberapa tipe instruksiyang berbeda dan mempergunakan masing-masing perhitungan clock cycle.

Seorang designer kompiler mencoba memilih

diantara 2 kode sekuensial untuk komputer tertentu. Fakta CPI untuk instruksi kelas ini dari designer hardware B C menunjukkan A
CPI 1 2 3

Untuk statement bahasa tingkat tinggi, penulis

kompiler mempertimbangkan 2 kode sekuensial yang dibutuhkan oleh perhitungan instruksi berikut ini
Kode Sekuensial 1
2 Instruction Count untuk instruksi kelas ini

A 2
4

B 1
1

C 2
1

Kode sekuensial mana yang mengeksekusi

keseluruhan instruksi? Kode sekuensial mana yang lebih cepat? Berapa CPI untuk setiap sekuensial?

Sekuensial 1 melakukan 2+1+2 = 5 instruksi Sekuensial 2 melakukan 4+1+1 = 6 instruksi Gunakan rumus Sehingga:
CPU clock cycle 1 = (1x2)+(2x1)+(3x2)= 2+2+6 =10

cycle CPU clock cycle 1 = (1x4)+(2x1)+(3x1)= 4+2+3 =9 cycle


Maka sekuensial 2 lebih cepat, meski harus

melakukan 1 instruksi ekstra. Karena sekuensial 2 memerlukan clock cycle yang lebih sedikit, namun memiliki instruksi lebh banyak,maka pasti memiliki CPI yang lebih rendah.

Nilai CPI dapat dihitung:

Sebuah aplikasi yang ditulis menggunakan bahasa

Java dieksekusi selama 15 detik pada sebuah prosesor. Sebuah kompiler Java yang baru hanya membutuhkan 0,6 dari instruksi kompiler lama, sayangnya akan meningkatkan CPI sebesar 1,1. seberapa cepat aplikasi ini dapat dijalankan pada kompiler baru?

MIPS (Million Instructions Per Second)

Berdasarkan contoh sebelumnya, maka didapatkan perhitungan kode untuk program yang sama menggunakan 2 kompiler yang berbeda
Kode dari Kompiler 1 Kompiler 2 Instruction Count (milyar) untuk setaip kelas instruksi A 5 10 1 1 B 1 1 C

Asumsikan bahwa clock rate Komputer adalah 4 GHz. Sekuensial mana yang lebih cepat berdasarkan MIPS? Dan berdasarkan execution time?

Pertama, kita cari execution time untuk 2 kompiler mempergunakan rumus

CPU clock cycles1 = ((1x5)+(2x1)+(3x1) x 109) = 10x 109 CPU clock cycles2 = ((1x10)+(2x1)+(3x1) x 109) = 15x 109 Sekarang dihitung execution time untuk kedua kompiler

Berdasarkan execution time, kompiler 1 menghasilkan program yang lebih cepat. Sekarang hitung MIPS rate untuk setiap versi program dengan rumus

Jadi kompiler 2 memiliki rating MIPS yang lebih tinggi, akan tetapi kode dari kompiler 1 lebih cepat

Sebuah program memiliki perhitungan performa sebagai berikut:


Perhitungan Instruction Count Clock rate CPI Komputer A 10 milyar 4 GHz 1,0 Komputer B 8 milyar 4 GHz 1,1

Komputer mana yang memiliki rating MIPS lebih

tinggi? Komputer mana yang lebih cepat?

Anda mungkin juga menyukai