Maximizing Processor
Maximizing Processor
BAB I
PENGENALAN
Hampir seluruh aspek kehidupan manusia saat ini tidak dapat dilepaskan dari teknologi,
khususnya teknologi komputer. Dapat dilihat bahwa untuk menuliskan suatu dokumen, orang
cenderung sudah meninggalkan mesin ketik manual dan sudah digantikan perannya oleh komputer.
Komputer sendiri terdiri dari banyak komponen, yang di dalamnya terjadi perkembangan teknologi
yang begitu cepat. Dan pada akhirnya kita bisa memanfaatkan computer ini secara maksimal, efesien.
Salah satu komponen yang paling penting yaitu prosesor, bagaimana kita bisa meningkatkan
kinerjanya supaya proses yang terjadi semakin cepat dan bersifat parallel. Hal ini terkadang terbentur
dengan sulitnya pengimplentasiannya dalam kehidupan sehari-hari, karena pada umumnya ini ada
kaitannya dengan ketergantungan antar proses yang sedang dieksekusi. Akan tetapi kami akan coba
membahas masalah ini dengan menggunakan metode Paralel dan Pipeling untuk meningkatkan
kinerja prosesor itu sendiri, selamat mengikuti sajian kami dalam bab selanjutnya.
1
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
Kita bisa mendapatkan beberapa manfaat dari penulisan ini, diantaranya adalah:
Kami menjelaskan tentang konsep paralelisme, perangkat lunak dan perangkat keras
pemrograman system parallel, pengertian penjadwalan system parallel, pengertian aliran intruksi dan
data system parallel, pengertian arsitektur system paralledan juga pengertian Pipeling dan
Superscalar.
BAB I PENGENALAN
Bab ini bersi pengenalan latar belakang, rumusan masalah, tujuan dan manfaat penulisan,
batasan masalah dan sistematika penulisan.
Dalam bab ini kami akan menjelaskan tentang konsep paralelisme, perangkat lunak dan
perangkat keras pemrograman system parallel, pengertian penjadwalan system parallel, pengertian
aliran intruksi dan data system parallel, pengertian arsitektur system paralledan juga pengertian
Pipeling dan Superscalar.
DAFTAR PUSTAKA
2
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
BAB II
DASAR TEORI
3
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
C. Tingkat Paralelisme
Berdasarkan tingkat paralelismenya prosesor parallel dibagi menjaadi beberapa tingkat:
1. Computer array
- Prosesor array = atau processor yang bekerjasama untuk mengolah set intruksi
yang sama dan data yang berbeda / SIMD (single instruction-stream multiple
data)
- Prosesor vector = beberapa prosesor yang disusun secara pipeline
2. Multiprocessor yaitu sebuah system yang memiliki 2 processor atau lebih yang
salaing berbagi memori
3. Multicomputer yaitu sebuah system yang mempunyai dua prosesor atau lebih
yang masing-masing prosesor mempunyai memori sendiri
4
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
5
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
program cukup dikompilasi pada satu komputer saja. Selanjutnya hasil kompilasi didistribusikan
kekomputer lain yang akan menjadi node komputasi parallel. Program master hanya berada pada satu
node sedangkan program slave berada pada semua node.
6
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
Pembatasan dalam penjadwalan juga terjadi dalam multiprosesor. Hal ini disebabkan karena:
a) Kemungkinan adanya load sharing. Load sharing terjadi jika ada beberapa prosesor yang
identik. Untuk mengatasi hal itu maka tiap prosesor memiliki kemampuan penjadwalan
mandiri (self schedulling).
b) Kemungkinan terlewatinya sebuah proses dari antrian [ready queue] atau beberapa prosesor
memilih untuk mengeksekusi proses yang sama. permasalahan seperti itu bisa dijawab
dengan sebuah master-slave structure, yaitu suatu struktur dimana satu prosesor ditunjuk
sebagai master. Master inilah yang akan bertanggung jawab dalam hal penjadwalan,
memproses I/O, dan sebagainya. Sedangkan prosesor yang lain [slave] hanya bertugas untuk
mengeksekusi user code. Hal ini disebut juga sebagai Asymmetric Multiprocessing karena
hanya satu prosesor yang dapat mengakses struktur data dari sistem.
Ada beberapa jenis dari sistem penjadualan prosesor jamak, namun yang akan dibahas dalam
bab ini adalah penjadwalan pada sistem prosesor jamak yang memiliki fungsi-fungsi prosesor yang
memiliki fungsi yang sama (Homogeneous processors within a multiprocessor).
7
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
8
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
C. Clustering
Clustering adalah proses mengelompokkan objek berdasarkan informasi yang diperoleh dari
data yang menjelaskan hubungan antar objek dengan prinsip untuk memaksimalkan kesamaan antar
anggota satu kelas dan meminimumkan kesamaan antar kelas/cluster. Tujuannya menemukan cluster
yang berkualitas dalam waktu yang layak. Clustering dalam data mining berguna untuk menemukan
pola distribusi di dalam sebuah data set yang berguna untuk proses analisa data. Kesamaan objek
biasanya diperoleh dari kedekatan nilai-nilai atribut yang menjelaskan objek-objek data, sedangkan
objek-objek data biasanya direpresentasikan sebagai sebuah titik dalam ruang multidimensi.
Dengan menggunakan clustering, dapat diidentifikasi daerah yang padat, pola-pola distribusi
secara keseluruhan dan keterkaitan yang menarik antara atribut-atribut data. Dalam data mining
usaha difokuskan pada metode-metode penemuan untuk cluster pada basisdata berukuran besar
secara efektif dan efisien. Banyaknya pendekatan clustering menyulitkan dalam menentukan ukuran
kualitas yang universal. Namun, beberapa hal yang perlu diperhatikan adalah input parameter yang
tidak menyulitkan user, cluster hasil yang dapat dianalisa, dan skalabilitas terhadap penambahan
ukuran dimensi dan record dataset.
9
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
A. Komputer SSID
Gambar di bawah menyajikan arsitektur mesin komputer SISD (Single Instruction Single
Data) dari model Von Neumann. Jenis ini merupakan komputer sekuensial dengan cirri pokok hanya
memiliki satu prosesor (Schendel, 1984). Skema kerja prosesor menurut gambar tersebut
menunjukkan bahwa kemampuan mesin sekuensial dalam menjalankan eksekusi program, setiap
operasi aritmatika ataupun logika dilakukan dalam satu unit kalkulasi. Hal ini disebabkan dalam setiap
instruksi, mesin hanya mampu membaca data dalam sekali kerja. Oleh sebab itu dapat disimpulkan
bahwa penggunaan mesin ini pada bidang aplikasi sangat terbatas, sebab kemampuan dari
prosesornya terbatas. Contoh dari kelompok ini adalah jenis personal komputer (PC) dan mini
komputer.
10
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
B. Komputer SIMD
Gambar di bawah menyajikan arsitektur mesin komputer SIMD (Single Instruction Multiple
Data) dari jenis komputer paralel. Dari skema dapat dicirikan bahwa tipe ini terdapat N prosesor yang
masing-masing prosesor dihubungkan dengan memori lokal sehingga data dan program dapat
disimpan. Selain itu semua prosesor dikendalikan oleh satu unit kontrol (Knob, 1990). Kemampuan
pokok yang dimiliki oleh mesin ini menunjukkan bahwa pada saat yang sama, setiap prosesor mampu
mengeksekusi instruksi-instruksi yang sama dari data yang berbeda. Mesin yang dapat dimasukkan
dalam tipe ini antara lain ILLIAC IV, STAR-100, DRAY-1, STARAN IV dan ILC (memiliki 4096 prosesor).
C. Komputer MISD
Jenis yang ketiga adalah komputer paralel MISD (Multiple Instruction Single Data). Dalam
gambar di bawah, mesin MISD memiliki satu unit memori. Kemampuan yang dimiliki untuk
mengeksekusi program menunjukkan bahwa pada setiap saat, satu data dari memori dioperasikan
oleh setiap prosesor menurut instruksi-instruksi dari setiap unit kontrol. Jadi secara paralel, satu data
yang sama dapat diproses oleh prosesor-prosesor yang berlainan.
Secara struktural, mesin ini nampak ekivalen dengan mesin SISD. Hanya karena memiliki
prosesor bebas lebih dari satu, maka mesin ini dapat dikatakan sebagai mesin multi-prosesor yang
kemampuannya relatif masih terbatas untuk digunakan di bidangbidang aplikasi.
11
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
D. Komputer MIMD
Model komputer MIMD (Multiple Instruction Multiple Data) merupakan jenis komputer paralel
yang disajikan pada gambar di bawah. Mesin ini memiliki N prosesor bebas dan masing-masing
prosesor mempunyai satu unit kontrol, sehingga mesin ini dapat kita sebut sebagai mesin
multikomputer. Ciri lain yang ada pada mesin tersebut adalah prosesor-prosesornya saling bekerja
sama dalam unit Input-Output dan memori utama, sehingga mesin ini dapat dikategorikan sebagai
mesin multiprosesor.
Kemampuan mesin MIMD menunjukkan bahwa pada setiat saat, secara serentak prosesor-
prosesor dapat menjalankan instruksi-instruksi yang berlainan secara paralel. Dari model susunan
prosesornya, dapat disimpulkan bahwa komputer semacam ini dapat dimanfaatkan untuk aplikasi
khusus guna memecahkan masalah yang membutuhkan operasi-operasi resolusi tinggi dan sangat
kompleks.
12
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
A. Multiprosesor
Multicore microprocessor adalah kombinasi dua atau lebih prosesor independen ke dalam sebuah
integrated circuit (IC). Pada umumnya, multicore mengizinkan perangkat komputasi untuk
memeragakan suatu bentuk thread-level paralelism (TLP) tanpa mengikutsertakan banyak prosesor
terpisah. TLP lebih dikenal sebagai chip-level multiprocessing.
13
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
Keuntungan:
Meningkatkan performa dari operasi cache snoop (bus snooping). Bus snooping adalah suatu
teknik yang digunakan dalam sistem pembagian memori terdistribusi dan multiprocessor yang
ditujukan untuk mendapatkan koherensi pada cache. Hal ini dikarenakan sinyal antara CPU
yang berbeda mengalir pada jarak yang lebih dekat, sehingga kekuatan sinyal hanya
berkurang sedikit. Sinyal dengan kualitas baik ini memungkinkan lebih banyak data yang
dikirimkan dalam satu periode waktu dan tidak perlu sering di-repeat
Secara fisik, desain CPU multicore menggunakan ruang yang lebih kecil pada PCB (Printed
Circuit Board) dibandingkan dengan desain multichip SMP.
Prosesor dual-core menggunakan sumber daya lebih kecil dibandingkan dengan sepasang
prosesor dual-core.
Desain multicore memiliki resiko design error yang lebih rendah daripada desain single-core.
Kerugian:
Dalam hal sistem operasi, dibutuhkan penyesuaian pada software yang ada untuk
memaksimalkan kegunaan dari sumber daya komputasi yang disediakan oleh prosesor
multicore. Kemampuan prosesor multicore untuk meningkatkan performa aplikasi juga
bergantung pada jumlah penggunaan thread dalam aplikasi tersebut
Dari sudut pandang arsitektur, pemanfaatan daerah permukaan silikon dari desain single-core
lebih baik daripada desain multicore.
14
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
B. Multicomputer
2.6 PIPELING
A. Definisi Pipeling
Pipeline adalah suatu cara yang digunakan untuk melakukan sejumlah kerja secara
bersamaan tetapi dalam tahap yang berbeda yang dialirkan secara kontinu pada unit pemrosesan.
Pipeline pada dasarnya digunakan pada komputer bertujuan untuk meningkatkan kinerja dari
komputer.
15
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
Teknik pipeline ini dapat diterapkan pada berbagai tingkatan dalam sistem komputer, yaitu:
Ada perbedaan khusus antara model microprocessor yang tidak menggunakan arsitektur pipeline
dengan microprocessor yang menerapkan teknik ini, yaitu;
1. Pada microprocessor yang tidak menggunakan pipeline, satu instruksi dilakukan sampai
selesai, baru instruksi berikutnya dapat dilaksanakan.
2. Pada microprocessor yang menggunakan teknik pipeline, ketika satu instruksi sedangkan
diproses, maka instruksi yang berikutnya juga dapat diproses dalam waktu yang
bersamaan. Tetapi, instruksi yang diproses secara bersamaan ini, ada dalam tahap proses
yang berbeda. Jadi, ada sejumlah tahapan yang akan dilewati oleh sebuah instruksi
Gambar pipeling.
Sejumlah teknik pipeline yang harus diperhatikan agar dapat berjalan dengan baik, yaitu:
1. Terjadinya penggunaan resource yang bersamaan.
2. Ketergantungan terhadap data.
3. Pengaturan jump ke suatu lokasi memori.
16
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
B. Kekurangan Pipeling
- Kelebihan
1. Siklus waktu dalam prosesor berkurang, sehingga secara umum menilai instruksi-isu
2. Kombinasi beberapa sirkuit seperti adders atau multipliers dapat dibuat lebih cepat
dengan menambahkan lebih circuitry. Jika pipelining digunakan sebagai gantinya,ia
dapat menyimpan circuity melawan yang lebih kompleks atas kombinasi sirkuit.
- Kekurangan
1. Mencegah penundaan cabang ini (berlaku, setiap cabang yang tertunda) dan
masalah dengan serial instruksi yang dijalankan secara bersamaan,akibatnya desain
yang lebih sederhana dan murah untuk produksi.
2. Instruksi yang tersembunyi pada prosesor non pipelining tersebut sedikit lebih
rendah daripada di pipelining yang setara. Hal ini disebabkan oleh kenyataan bahwa
tiba-tiba harus ditambahkan ke jalur data dari prosesor pipelined
3. Prosesor non pipelining akan ada instruksi bandwith yang stabil. Kinerja prosesor
pipelined sangat sulit untuk memprediksi dan dapat bervariasi secara lebih luas di
antara berbagai program
17
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
2.7 SUPERSCALAR
Superscalar adalah kemampuan prosesor yang dapat berjalan sekali putaran eksekusi intruksi
dan perintahnya dapat dilakukan sebanyak mungkin. Tentunya dengan teknik pipeling yang telah kita
bahas. Prosesor ini menggunakan beberapa unit fungsionalitas yang dieksekusi secara parallel, lihat
gambar.
18
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
BAB III
PENUTUP
3.1 Simpulan
Setelah menelaah lebih jauh dari pembahasan di atas kami dapat simpulkan bahwa:
3.2 Saran
Untuk saran di penulisan selanjutnya mohon untuk menyertakan proses yangn lebih detail lagi
per bab yang ada di dalam bahasan materi, disertakan dengan analisa gambar dan audio visual bila
perlu. Untuk memudahkan pemahaman yang menyaksikan atau yang menyimak penjelasan ini.
19
TUGAS SISTEM KOMPUTER - MAXIMIZING PROCESSOR
20