Central Processing Unit

Download Report

Transcript Central Processing Unit

Parallel Processing
Organisasi Komputer II
STMIK – AUB SURAKARTA
1
Introduction
Tradisional  Komputer dianggap sebagai mesin
sekuensial  CPU mengeksekusi program
sesuai instruksi mesin secara berurutan dan
satu per satu  TIDAK SELURUHNYA BENAR!
Bukti :
Operasi mikro  sinyal kontrol dibuat bersamaan
Pipelining instruksi
Perkembangan teknologi  penggunaan
paralelisme lebih lanjut
2
Introduction
Multiprocessing
Komputasi vektor
Organisasi prosesor paralel
3
MULTIPROCESSING
Loosely Coupled Microprocessing
Terdiri dari kumpulan sistem yang relatif bersifat
otonom, masing-masing CPU memiliki memori utama
dan saluran I/Onya sendiri
Sering disebut multikomputer
Functionality Specialized Processors
Contoh : prosesor I/O
Terdapat sebuah master, general-purpose CPU, dan
CPU khusus dikontrol oleh CPU master dan
memberikan layanan kepadanya.
4
Multiprocessing
Tightly Coupled Multiprocessing
Mutiprosesor
Terdiri dari himpunan prosesor yang menggunakan bersama
memori utama dan berada di bawah kontrol terintegrasi
suatu sistem operasi.
Parallel Processing
Multiprosesor yang dipasangkan dengan kuat yang
dapat mengerjakan secara kooperatif sebuah
pekerjaan secara paralel
5
Tightly Coupled Multiprocessing Multiprosesor
 Mengandung dua atau lebih prosesor general-purpose
yang memiliki kemampuan yang setara.
 Semua prosesor memiliki akses bersama ke memori
global (umum). Beberapa memori lokal (private) dapat
juga digunakan.
 Semua prosesor memiliki akses bersama ke perangkat
I/O, baik melalui saluran yang sama atau melalui saluran
yang berbeda yang menyediakan lintasan ke perangkat
yang sama
 Sistem dikontol oleh sebuah sistem operasi yang
terintegrasi yang menyediakan interaksi antara prosesor
dengan program-program pada tingkatan job,task, file,
dan data
6
Organisasi Sistem Multiprosesor
Time-Shared Bus
Multiport Memory
Central Control Unit
7
Time-Shared Bus
Mekanisme pembentukan sistem multiprosesor
yang paling sederhana.
Struktur dan antarmuka sama seperti sistem
prosesor tunggal yang menggunakan
interkoneksi bus.
8
Feature-feature Bus
 Addresing
Pengalamatan harus dapat membedakan modul-modul pada bus
untuk menentukan sumber dan tujuan data.
 Arbitration
Setiap modul I/O dapat berfungsi sebagai “master” pada
sementara waktu.
Mekanisme disediakan untuk menentukan permintaanpermintaan yang melakukan persaingan dalam memperoleh
kontrol bus dengan menggunakan sejumlah teknik prioritas.
 Time Sharing
Apabila sebuah modul sedang melakukan pengontrolan
terhadap bus, maka modul-modul lainnya dikunci dan apabila
perlu, harus menahan operasi sampai dengan akses bus
diperoleh
9
Kelebihan Organisasi Bus
 Kesederhanaan
Antarmuka fisik dan logika pengalamatan, arbitrasi serta timesharing seluruh prosesor tetap sama seperti pada sistem
prosesor tunggal.
 Fleksibilitas
Organisasi bus pada umumnya mudah untuk dikembangkan
dengan cara menambahkan CPU yang lebih banyak ke bus
 Reliabilitas
Pada dasarnya bus adalah media yang pasif, dan kegagalan
suatu perangkat yang terhubung tidak akan menyebabkan
kegagalan sistem secara keseluruhan.
10
Kekurangan Organisasi Bus
 Penurunan Kinerja  seluruh referensi memori
dilewatkan melalui bus umum  kecepatan sistem
dibatasi oleh siklus waktu.
 Untuk meningkatkan kinerja  melengkapi setiap CPU
dengan memori cache untuk mengurangi jumlah akses
 Penggunaan cache menimbulkan pertimbangan
rancangan yangbaru  jika suatu word diubah pada
sebuah cache dapat menginvalidkan word pada cache
lainnya.  CPU harus selalu diberitahu tiap kali terjadi
update
11
Multiport Memory
 Memungkinkan akses modul-modul memori utama
secara langsung dan independen oleh CPU dan modul
I/O.
 Diperlukan logika berkaitan dengan memori agar tidak
terjadi konflik  Meng-assign prioritas yang permanen
bagi semua port memori.
 Kinerja lebih baik dibanding bus  masing-masing
prosesor memiliki llintasan berdedikasi ke masingmasing modul memori.
 Memungkinkan melakukan konfigurasi memori secara
“private” bagi sebuah CPU atau lebih dan modul-modul
I/O  mencegah akses yang tidak diizinkan dan
pengubahan oleh prosesor lain
12
Central Control Unit
Menyalurkan aliran data yang terpisah secara
bolak-balik di antara modul-modul yang
independen : CPU, memori, modul I/O.
Pengontrol dapat membufferkan permintaan
dan melakukan fungsi arbitrasi dan pewaktuan.
Pengontrol dapat melewatkan pesan-pesan
status dan kontrol di antara CPU-CPU dan
melakukan peringatan update cache.
13
Central Control Unit
Seluruh logika untuk pengkoordinasian
konfigurasi multiport dikonsentrasikan di unit
kontrol pusat  antarmuka modul I/O, memori
dan CPU tidak begitu terganggu.  fleksibilitas
dan kemudahan interfacing pendekatan bus.
Kelemahan  unit kontrol menjadi cukup rumit
Umum digunakan untuk sistem mainframe
berprosesor jamak  IBM S/370
14
Sistem Operasi Multiprosesor
Adanya suatu sistem operasi tunggal yang
mengontrol sumber-sumber daya sistem 
tampak sebagai sistem multiprogramming
berprosesor tunggal.
Sistem operasilah yang memiliki tanggung
jawab untuk menjadwalkan eksekusi job dan
proses tersebut dan mengalokasi sumber daya.
15
Sistem Operasi Multiprosesor
Memiliki tujuh fungsi :
Alokasi sumber daya dan manajemen
Tabel dan proteksi data
Penghindaran deadlock sistem
Penghentian tak normal
Penyeimbangan pembebanan I/O
Penyeimbangan pembebanan prosesor
Konfigurasi kembali
16
Sistem Operasi Multiprosesor
Tanggungjawab SO  mengetahui keefisienan
penggunaan sumber daya  jika tidak
diketahui, akan terjadi pemborosan pada sistem
CPU yang berjumlah banyak.
Merekonfigurasi sistem apabila terjadi kegagalan
prosesor, dengan melanjutkan operasi pada
tingkatan kinerja yang lebih rendah.
17
Penjadwalan Multiprosesor
Dua fungsi penjadwalan job :
Apakah proses didedikasikan bagi prosesor
Bagaimana proses dijadwalkan oleh prosesor
Sistem operasi harus menjamin bahwa dua
prosesor tidak memilih proses yang sama dan
proses-proses tidak akan hilang dari antrian
18
KOMPUTASI VEKTOR
 Kinerja komputer general purpose berukuran mainframe
terus berkembang  perkembangan aplikasi berada di
luar kemampuan mainframe modern  masalahmasalah matematik di bidang aerodinamika, seismologi,
meteorologi, fisika.
 Ditandai dengan kebutuhan perhitungan program yang
besar dan berulang-ulang untuk melakukan operasi
aritmetik floating point terhadap array bilangan.
 Untuk menangani  SUPERKOMPUTER
19
Superkomputer
Mampu melakukan ratusan juta operasi floating
point per detik dengan harga 10-15 juta dollar.
Superkomputer bertolakbelakang dengan
mainframe yang dirancang untuk kebutuhan
multiprogramming, superkomputer ditujukan
untuk keperluan kalkulasi numerik  umumnya
digunakan untuk keperluan pusat penelitian dan
kantor yang bergerak di bidang ilmiah dan
rekayasa.
20
Peningkatan Kinerja
Superkomputer
 Superkomputer dioptimasikan untuk kebutuhan
komputasi vektor, namun pada dasarnya superkomputer
adalah sebuah komputer general-purpose yang memiliki
kemampuan menangani tugas-tugas pengolahan skalar
dan data yang umum.
 Tugas utama : melakukan operasi-operasi aritmatik
terhadap array atau vektor bilangan-bilangan floating
point.
 Iterasi diubah menjadi vector processing (paralelisme
dalam komputasi vektor) atau parallel processing
21
Peningkatan Komputasi Vektor
ALU Pipelined
ALU Paralel  unit kontrol mengirimkan data ke
ALU-ALU sehingga ALU-ALU tersebut dapat
berfungsi secara paralel.
Prosesor Paralel  pembagian tugas menjadi
beberapa proses yang akan dieksekusi secara
paralel.
22
MULTIPLE PROCESSOR
ORGANIZATION
Single instruction, single data stream - SISD
Single instruction, multiple data stream - SIMD
Multiple instruction, single data stream - MISD
Multiple instruction, multiple data stream- MIMD
23
Single Instruction, Single Data
Stream - SISD
Single processor
Single instruction stream
Data stored in single memory
Uni-processor
 Satu CPU yang mengeksekusi instruksi
satu persatu dan menjemput atau
menyimpan data satu persatu
24
Single Instruction, Multiple
Data Stream - SIMD
 Single machine instruction
 Controls simultaneous execution
 Number of processing elements
 Lockstep basis
 Each processing element has associated data memory
 Each instruction executed on different set of data by
different processors
 Vector and array processors
 Satu unit kontrol yang mengeksekusi aliran tunggal
instruksi, tetapi lebih dari satu Elemen Pemroses
25
Multiple Instruction, Single
Data Stream - MISD
Sequence of data
Transmitted to set of processors
Each processor executes different instruction
sequence
Never been implemented
Mengeksekusi beberapa program yang berbeda
terhadap data yang sama.
26
Multiple Instruction, Multiple
Data Stream- MIMD
Set of processors
Simultaneously execute different instruction
sequences
Different sets of data
SMPs, clusters and NUMA systems
Juga disebut multiprocessors, dimana lebih dari
satu proses dapat dieksekusi berikut terhadap
dengan datanya masing-masing
27
Taxonomy of Parallel Processor
Architectures
28