PAPER MULTIPROCESSOR

dokumen-dokumen yang mirip
Disusun Oleh: Agenda. Terminologi Klasifikasi Flynn Komputer MIMD. Time Sharing Kesimpulan

Hendy Kusumo Nugroho ( kelas A)

SISTEM OPERASI. Belajar SO?

Bab I Pengenalan Sistem Operasi. Apa yang dimaksud Sistem Operasi?

Thread, SMP, dan Microkernel (P ( e P rtemuan ua ke-6) 6 Agustus 2014

TUGAS SITEM OPERASI. Nama dan N.P.M: 1.Frahma Yayang Hangga Putra

Pertemuan Ke-11 MULTIPROSESOR

Pokok Bahasan. Tujuan. Pengertian Sistem Operasi. Sistem Mainframe. Pengertian Sistem Operasi Perkembangan Sistem Operasi

Pengantar Sistem Operasi

Bab 1. Pengenalan Sistem Operasi POKOK BAHASAN: TUJUAN BELAJAR: 1.1 APAKAH SISTEM OPERASI? Pengertian Sistem Operasi Perkembangan Sistem Operasi

Bab 3.Proses dan Penjadualan

Struktur Sistem Operasi

Penggunakan lebih dari satu CPU untuk menjalankan sebuah program secara simultan. Tujuan Utama Untuk meningkatkan performa komputasi.

DASAR KOMPUTER DAN PEMROGRAMAN IB PENGANTAR SISTEM OPERASI

Prio Handoko, S.Kom., M.T.I.

PAPER PIPELINE INSTRUKSI

ARSITEKTUR KOMPUTER. Satu CPU yang mengeksekusi instruksi satu persatu dan menjemput atau menyimpan data satu persatu.

Arsitektur Komputer. Dua element utama pd sistem komputer konvensional: Memory Processor

10. PARALLEL PROCESSING

Kebutuhan pengolahan paralel

Sistem Operasi PENGATURAN PROSES

PENGANTAR SISTEM OPERASI SISTEM OPERASI

Sistem Operasi Pertemuan 4 Thread, SMP & Microkernel. H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ.

Akim Manaor Hara Pardede, ST

PENJADWALAN PROSES AGUS PAMUJI. SISTEM OPERASI - Penjadwalan Proses

Penjadualan CPU. Konsep Dasar Kriteria Penjadualan Algoritma Penjadualan Penjadualan Multiple-Processor Penjadualan Real-Time Evaluasi Algorithm

Konsep Dasar Kriteria Penjadualan Algoritma Penjadualan Penjadualan Multiple-Processor Penjadualan Real-Time Evaluasi Algorithm

Sistem Operasi dalam bahasa Inggrisnya disebut Operating System, atau biasa di singkat dengan OS.

KEBUTUHAN KOMPUTER PARALEL

Penjadualan CPU. Konsep Dasar. Penjadualan CPU. Penggantian Rangkaian Urutan CPU dan I/O Burst

Sistem Operasi Pertemuan 1 Arsitektur Komputer. (Penyegaran) H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ.

>> KLASIFIKASI ARSITEKTURAL

SISTEM OPERASI TERDISTRIBUSI

Apa itu Sistem Operasi? Bagian Sistem Operasi secara umum. Sasaran Sistem Operasi. Pengantar Sistem Operasi

ARSITEKTUR SISTEM. Alif Finandhita, S.Kom, M.T. Alif Finandhita, S.Kom, M.T 1

Penjadwalan CPU. Badrus Zaman

Operasi pada Sistem Operasi. Avida Endriani Reza Gusty Erlangga D3 TEKNIK INFORMATIKA A

PENDAHULUAN. -. Pengolahan data numerik dalam jumlah yang sangat besar. -. Kebutuhan akan ketersediaan data yang senantiasa up to date.

PENGOLAHAN PARALEL. Kebutuhan akan Komputer Paralel PENDAHULUAN. Dahulu:

Arsitektur Sistem Komputer. Operasi Sistem Komputer. Struktur Sistem Komputer. Review:

Pengantar Hardware: Sistem Bus pada Komputer. Hanif Fakhrurroja, MT

Kongkurensi LPOHLVSFOTJ!

Struktur Sistem Komputer

Struktur Sistem Komputer

PENDAHULUAN. Motivasi : -. Pengolahan data numerik dalam jumlah yang sangat besar. -. Kebutuhan akan ketersediaan data yang senantiasa up to date.

BAB 2 LANDASAN TEORI. menyediakan layanan ke komputer lain melalui koneksi jaringan. Server dapat

Perbedaan Kernell Linux dan Windows

IF3191- Penjadwalan Proses. Henny Y. Zubir. Departemen Teknik Informatika Institut Teknologi Bandung. IF-ITB/HY/24-Aug-03 IF3191 Penjadwalan Proses

KLASIFIKASI ARSITEKTURAL

1 Tinjau Ulang Sistem Komputer

Organisasi SistemKomputer, Pelayanan Sistem Operasi. Ptputraastawa.wordpress.com

Dukungan Sistem Operasi :

ARSITEKTUR DAN ORGANISASI KOMPUTER

Organisasi & Arsitektur. Komputer. Org & Ars komp Klasifikasi Ars Komp Repr Data

ORGANISASI KOMPUTER II AUB SURAKARTA

Sistem Operasi Terdistribusi

Pemrosesan Paralel. Haddad Sammir, M.Kom. Arsitektur Memori Komputer Paralel. March 4, 2015

Struktur Sistem Komputer. Abdullah Sistem Informasi Universitas Binadarma

BAB II TINJAUAN PUSTAKA

Sistem Operasi. Teknologi Informasi

Sistem Operasi AGUS PAMUJI. Teknik Informatika

MODUL 4 KONSEP PROSES, KONKURENSI, MANAJEMEN PROSES (1) M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - M O D U L 4

Komponen-komponen Komputer

BAB 03 Bus & Sistem Interkoneksi

MANAJEMEN MEMORI SISTEM OPERASI

PENDAHULUAN. Pertemuan 1 1

Pertemuan ke 14 Sistem Bus Riyanto Sigit, ST. Nur Rosyid, S.kom Setiawardhana, ST Hero Yudo M, ST

DASKOM & PEMROGRAMAN. Dani Usman

Bab 3: Proses-Proses. Konsep Proses

Konsep SISTEM OPERASI. Pengenalan Sistem Operasi

TUGAS SISTEM OPERASI

Soal-jawab Quiz 2. Oleh: Endro Ariyanto (END) Oktober 2008

1. SUDUT PANDANG PENGGUNA

MANAJEMEN PROSES. Pointer State proses Keadaan proses: Keadaan mungkin, new, ready, running, waiting, halted, dan juga banyak lagi.

SISTEM OPERASI ISG2B3. Agus Setiawan Program Studi Sistem Informasi Fakultas Rekayasa Industri Telkom University

Model Pemrograman Paralel

Danang Puspito Jati A

Bab 1. Pengenalan Sistem Terdistribusi

Definisi Sistem Operasi

MAKALAH SISTEM OPERASI Perbedaan Proses dan Thread. Disusun Oleh : NOVITA ANGGRAINI PUTRI

Struktur Sistem Komputer

PENGANTAR KOMPUTASI MODERN

Konsep Dasar Sistem Komputer

INFRASTRUKTUR WAREHOUSE KATEGORI INFRASTRUKTUR DW

KELOMPOK 1 PERANGKAT LUNAK SISTEM

MODUL 2 KOMPONEN, LAYANAN SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 2

Sistem Operasi. Struktur Sistem Komputer. Adhitya Nugraha. Fasilkom 10/6/2014

PROSES DAN THREADS DALAM SISTEM OPERASI

MINGGU II DASAR SISTEM OPERASI

SISTEM OPERASI THREAD DAN MULTITHREADING

Bab 8. Memori Virtual POKOK BAHASAN: TUJUAN BELAJAR: 8.1 LATAR BELAKANG

Tipe Sistem Operasi. Stand alone Network Embedded

Pertemuan Ke-3 Struktur Interkonesi (Bus System)

Soal-jawab Quiz 1. Oleh: Endro Ariyanto (END) Oktober 2008

Recap. Proses. Proses. Multiprogramming. Multiprocessing 9/16/2016. Ricky Maulana Fajri

THREAD Ulir utas thread

Cara Kerja Processor. Primo riveral. Abstrak. Pendahuluan.

BAB II LANDASAN TEORI

PROSES. Sistem Terdistribusi

SMK MUHAMMADIYAH 4 JAKARTA TEKNIK KOMPUTER DAN JARINGAN SISTEM OPERASI MENEJEMEN MEMORI

Transkripsi:

PAPER MULTIPROCESSOR ARSITEKTUR DAN ORGANISASI KOMPUTER Dosen : Drs. Eko Polosoro, M.Eng, M.M Kelompok: Muhammad Akbar (1111601058) Rano Kurniawan (1111601074) Taufik Tirkaamiasa (1111601082) MAGISTER ILMU KOMPUTER UNIVERSITAS BUDI LUHUR JAKARTA 2012

MULTIPROCESSOR I. Pengertian Multiprocessor Merupakan sistem komputer dengan dua atau lebih CPU yang identik dengan membagi akses secara penuh kepada common RAM (Shared Memory Multiprocessor). Kenapa menggunakan Multi Processor? ü Untuk support Multiprogramming. ü Untuk support parallel programming. ü Tidak independent. Multiprocessing merupakan istilah teknologi informasi dalam bahasa inggris yang merujuk kepada: Dukungan sebuah sistem untuk mendukung lebih dari satu processor dan mengalokasikan tugas kepada processor-processor tersebut. Kemampuan eksekusi terhadap beberapa proses perangkat lunak dalam sebuah sistem secara serentak, jika dibandingkan dengan sebuah proses dalam satu waktu. Meski istilah multiprogramming lebih sesuai untuk konsep ini, multiprocessing sering di implementasikan dalam perangkat keras (dengan menggunakan beberapa CPU sekaligus), sementara multiprogramming sering digunakan dalam perangkat lunak. Sebuah sistem mungkin dapat memiliki dua kemampuan tersebut, salah satu diantaranya atau tidak sama sekali. Perhatikan Gambar 1.1 Multiprogramming dengan Multiprocessor. Supervisor Proses A Processor 1 Proses B Processor 1 Proses C Proses D Gambar 1.1 : Multiprogramming dengan Multiprocessor

Gambar 1.1 Multiprogramming dengan Multiprocessor mengilustrasikan prilaku dari multiprocessing yang digunakan untuk multiprogramming. Beberapa proses terpisah di alokasikan di dalam memory. Ruang alamat proses terdiri dari halaman-halaman sehingga hanya sebagian saja dari proses tersebut yang berada dalam memory pada satu waktu. Hal ini memungkinkan banyak proses dapat aktif. II. Keunggulan Multiprocessor Gambar 2.1 : Multiprocessor Systems Gambar 2.1 Multiprocessor System merupakan skema proses pada multiprocessor. Berikut penjelasannya: a. Peningkatan throughput, karena lebih banyak proses/thread yang berjalan dalam satu waktu sekaligus (jika proses yang antri di ready queue sedikit). Perlu diingat, hal ini tidak berarti daya komputasinya menjadi meningkat menjadi sejumlah/sebanyak processornya. Yang meningkat ialah jumlah pekerjaan yang bisa dilakukannya dalam waktu tertentu. b. Economy of Scale (ekonomis), ekonomis dalam devices yang dibagi bersamasama. Processor-processor terdapat dalam satu komputer dan dapat membagi peripheral (ekonomis) seperti disk dan satu daya listrik. c. Peningkatan kehandalan (reliabilitas), jika satu processor mengalami suatu gangguan, maka proses yang terjadi masih dapat berjalan dengan baik karena tugas processor yang terganggu diambil alih oleh processor lain. Hal ini dikenal dengan istilah Graceful Degradation. Sistemnya sendiri dikenal bersifat fault tolerant atau fail of system.

III. Jenis-jenis Multiprocessing Multiprocessing dapat dibagi ke dalam beberapa kelas, yakni: 1. Berdasarkan simetrinya, multiprocessing dapat dibagi ke dalam: ü Asymmetric Multiprocessing (ASMP) ü Symmetric Multiprocessing (SMP) ü Non-Uniform Memory Access (NUMA) Multiprocessing ü Clustering 2. Berdasarkan jumlah instruksi dan datanya, dapat dibagi ke dalam: ü SISD (Single Instruction on Single Data Stream) ü SIMD (Single Instruction on Multiple Data Stream) ü MISD (Multiple Instruction on Single Data Stream) ü MIMD (Multiple Instruction on Multiple Data Stream) 3. Berdasarkan kedekatan antar processor, dapat dibagi ke dalam: ü Loosely Coupled ü Thightly Coupled 3.1 Asymmetric Multiprocessing (ASMP) Pendekatan pertama untuk penjadwalan processor jamak adalah penjadwalan asymmetric multiprocessing atau biasa disebut juga sebagai penjadwalan master/slave. Dimana pada metode ini hanya satu processor (master) yang menangani semua keputusan penjadwalan pemrosesan M/K dan aktivitas sistem lainnya dan processor lainnya (slave) hanya mengeksekusi proses. Metode ini sederhana karena hanya satu processor yang mengakses struktur data sistem dan juga mengurangi data sharing. Dalam teknik penjadwalan master/slave, satu processor menjaga status dari semua proses dalam sistem dan menjadwalkan kinerja untuk semua processor slave. Sebagai contoh, processor master memilih proses yang akan dieksekusi, kemudian mencari processor yang available dan memberikan instruksi start processor. Processor slave memulai eksekusi pada lokasi memory yang dituju. Saat slave mengalami sebuah kondisi tertentu seperti meminta M/K, processor slave memberi interupsi kepada processor master dan berhenti untuk menunggu perintah selanjutnya. Perlu diketahui bahwa processor slave yang berbeda dapat ditujukan untuk suatu proses yang sama pada waktu yang berbeda.

3.2 Symmetric Multiprocessing (SMP) Setiap processor menjalankan salinan identik dari sistem operasi dan banyak job yang dapat berjalan pada suatu waktu tanpa mengurangi kinerja. Gambar 3.2.1 : Skema Symmetric Multiprocessing (SMP) Keuntungan SMP: Performance Availability Incremental growth Gambar 3.2.2 : Skema Multiprogramming dengan Symmetric Multiprocessing

3.3 Non-Uniform Memory Access (NUMA) NUMA multiprocessor adalah sebuah sistem shared memory dimana waktu aksesnya bervariasi ke lokasi memory word. LM1 LM2 P2 Interconnection Network LMn Pn Gambar 3.3.1 : Shared Local Memories (BBN Butterfly) GSM GSM GSM Global Interconnect Network C I N C I N Gambar 3.3.2 : Hierarchical Cluster Model (Chedar System) GSM : Global Share Memory CIN : Cluster Interconnection Network CSM : Cluster Shared Memory Shared memory yang secara phisik didistribusikan ke semua proses disebut lokal memory dan kumpulan dari lokal memory membentuk ruang alamat global yang dapat diakses oleh semua proses.

NUMA dapat mengakses lokal memory lebih cepat dengan lokal proses, sedangkan akses ke memory yang jauh diberikan ke proses lain yang kapasitasnya lebih besar untuk ditambah delay melalui interkoneksi jaringan (BBN Butterfly). Disamping distribusi memory, secara umum shared memory dapat ditambahkan ke multiprocessor system, dalam hal ini ada tiga pola akses memory, dimana yang tercepat adalah akses ke lokal memory, akses ke global memory dan yang paling lambat adalah akses dari memory yang jauh (Hierarchical Cluster Model). 3.4 Single Instruction on Single Data Stream (SISD) Satu processor Satu instruksi stream Data disimpan di satu memory Disebut uni-processor Gambar 3.4.1 : Skema SISD 3.5 Single Instruction on Multiple Data Stream (SIMD) Instruksi mesin tunggal Eksekusi dikendalikan secara simultan Terdapat sejumlah elemen proses Setiap instruksi dieksekusi dalam set data yang berbeda oleh proses yang berbeda

Gambar 3.5.1 : Skema SIMD 3.6 Multiple Instruction on Single Data Stream (MISD) Banyak aliran instruksi Satu aliran data Belum dapat diimplementasikan dengan baik Gambar 3.6.1 : Skema MISD

3.7 Multiple Instruction on Multiple Data Stream (MIMD) Terdiri dari sejumlah set processor Terdiri dari sejumlah set data yang berbeda Secara simultan mengeksekusi urutan instruksi yang berbeda Sifat Komputer MIMD: Mendistribusikan pemrosesan ke sejumlah processor independen. Membagikan sumber termasuk memory utama ke processor independen. Setiap processor menjalankan programnya sendiri. Setiap processor berfungsi secara independen dan bersama-sama. Gambar 3.7.1 : Skema MIMD 3.8 Loosely Coupled Setiap site memiliki processor, memory lokal dan clock sendiri namun semua resource dapat diakses dari setiap site. Proses yang dijalankan pada komputer yang berbeda modul saling berkomunikasi dengan bertukar pesan melalui Message Transfer System (MTS).

Gambar 3.8.1 : Skema Loosely Coupled 3.9 Thightly Coupled Processor berkomunikasi antara satu dengan yang lain dengan cara berbagi memory utama, sehingga kecepatan komunikasi dari satu processor ke yang lain tergantung pada bandwidth memory. Sebuah memory lokal kecil atau buffer (cache) kemungkinan terdapat pada setiap processor untuk memperbaiki kinerja. Gambar 3.9.1 : Skema Thightly Coupled

IV. Time Sharing Time Sharing adalah inovasi yang memungkinkan komputer-komputer besar memproses banyak tugas secara simultan, dengan memberikan potongan waktu pada masing-masing tugas dan beralih dari satu tugas ke tugas lainnya dengan cepat. Varian dari multiprogramming, dimana tiap pemakai mempunyai satu terminal on-line dengan pemroses hanya memberi layanan pada pemakai yang aktif secara bergantian dengan cepat. Pemakai akan merasa dilayani terus menerus, padahal sebenarnya digilir persatuan waktu yang cukup singkat. Perbedaan Batch Multiprogramming dengan Time Sharing. Perhatikan Tabel 4.1 berikut ini: Tabel 4.1 : Perbedaan Batch Multiprogramming dengan Time Sharing Gambar 4.1 : Skema Organisasi Komputer SMP

Time shared/common bus (bus bersama). Seperti ditunjukkan pada Gambar 4.1 Skema Organisasi Komputer SMP di atas. Pada organisasi ini, semua processor dan modul I/O berbagi bus untuk mengakses memory utama. Kelebihan: sederhana (simplicity), fleksibel, handal (reliability). Kekurangan: Koherensi Cache CPU melakukan multiplex pada beberapa jobs yang berada di memory dan disk CPU hanya dialokasikan kepada jobs yang telah siap dan berada di memory Besar memory masih sangat terbatas. Pada job dilakukan swapped in dan out dari memory ke disk Komunikasi on-line (interaktif) antara user dan sistem, jika: OS telah selesai mengeksekusi satu perintah, menunggu perintah berikut bukan dari card reader, tapi dari terminal user. On-line System harus tersedia bagi user yang akan mengakses data dan kode. V. Affinity dan Load Balancing 5.1 Affinity Data yang paling sering diakses oleh beberapa proses akan memadati cache pada processor, sehingga akses memory yang sukses biasanya terjadi di memory cache. Namun, jika suatu proses berpindah dari satu processor ke processor lainnya akan mengakibatkan isi dari cache memory yang dituju menjadi tidak valid, sedangkan cache memory dari processor asal, harus disusun kembali populasi datanya. Karena mahalnya invalidating dan re-populating dari cache, kebanyakan sistem SMP mencoba untuk mencegah migrasi proses antar processor sehingga menjaga proses tersebut untuk berjalan di processor yang sama. Hal ini disebut afinitas processor (processor affinity). Ada dua jenis afinitas processor, yakni: Soft affinity yang memungkinkan proses berpindah dari satu processor ke processor yang lain, dan Hard affinity yang menjamin bahwa suatu proses akan berjalan pada processor yang sama dan tidak berpindah. Contoh sistem yang menyediakan system calls yang mendukung hard affinity adalah Linux.

5.2 Load Balancing Dalam sistem SMP, sangat penting untuk menjaga keseimbangan workload (banyaknya task yang harus diselesaikan oleh processor) antar semua processor untuk memaksimalkan keuntungan memiliki multiprocessor. Jika tidak, mungkin satu atau lebih processor idle disaat processor lain harus bekerja keras dengan workload yang tinggi. Load balancing adalah usaha untuk menjaga workload terdistribusi sama rata untuk semua processor dalam sistem SMP. Perlu diperhatikan bahwa load balancing hanya perlu dilakukan pada sistem dimana setiap processor memiliki antrian tersendiri (private queue) untuk proses-proses yang berstatus ready. Pada sistem dengan antrian yang biasa (common queue), load balancing tidak diperlukan karena sekali processor menjadi idle, processor tersebut segera mengerjakan proses yang dapat dilaksanakan dari antrian biasa tersebut. Perlu juga diperhatikan bahwa pada sebagian besar sistem operasi kontemporer mendukung SMP, jadi setiap processor bisa memiliki private queue. Ada dua jenis load balancing, yakni: Push migration, pada kondisi ini ada suatu task spesifik yang secara berkala memeriksa load dari tiap-tiap processor. Jika terdapat ketidakseimbangan, maka dilakukan perataan dengan memindahkan (pushing) proses dari yang kelebihan muatan ke processor yang idle atau yang memiliki muatan lebih sedikit. Pull migration, kondisi ini terjadi saat processor yang idle menarik (pulling) proses yang sedang menunggu dari processor yang sibuk. Kedua pendekatan tersebut tidak harus mutually exclusive dan dalam kenyataannya sering diimplementasikan secara paralel pada sistem load balancing. Keuntungan dari affinity berlawanan dengan keuntungan dari load balancing, yaitu keuntungan menjaga suatu proses berjalan pada satu processor yang sama dimana proses dapat memanfaatkan data yang sudah ada pada memory cache processor tersebut berkebalikan dengan keuntungan menarik atau memindahkan proses dari satu processor ke processor lain. Dalam kasus system engineering, tidak ada aturan tetap keuntungan yang mana yang lebih baik. Walaupun pada beberapa sistem, processor idle selalu menarik proses dari processor non-idle sedangkan pada sistem yang lain, proses dipindahkan hanya jika terjadi ketidakseimbangan yang besar antara processor.

Daftar Pustaka http://en.wikipedia.org/wiki/flynn%27s_taxonomy 19-05-2012 http://www.cs.toronto.edu/~demke/469f.06/lectures.shtml 19-05-2012 http://www.cs.vu.nl/~ast/books/book_software.html 19-05-2012 http://id.wikipedia.org/wiki/multiprocessing 19-05-2012 http://opensource.telkomspeedy.com/repo/abba/v06/kuliah/sistemoperasi/2008/240/15- Penjadwalan_Prosesor_Jamak.pdf 19-05-2012 http://www.oreilly.com/catalog/9780596514549/figs/i_mediaobject12_d1e21060.png 19-05-2012