Paralelisme
(parallelism) lahir dari pendekatan yang biasa dipergunakan oleh para perancang
sistem untuk menerapkan konsep pemrosesan konkuren. Teknik ini meningkatkan
kecepatan proses dengan cara memperbanyak jumlah modul perangkat keras yang
dapat beroperasi secara simultan disertai dengan membentuk beberapa proses yang
bekerja secara simultan pada modul-modul perangkat keras tersebut. Secara
formal, pemrosesan paralel adalah sebuah bentuk efisien pemrosesan informasi
yang menekankan pada eksploitasi dari konkurensi kejadian-kejadian dalam proses
komputasi.Pemrosesan paralel dapat terjadi pada beberapa tingkatan (level)
proses. Tingkatan tertinggi pemrosesan paralel terjadi pada proses di antara
banyak job (pekerjaan) atau pada program yang menggunakan multiprogramming,
time sharing, dan multiprocessing. Multiprogramming kemampuan eksekusi terhadap
beberapa proses perangkat lunak dalam sebuah system secara serentak, jika
dibandingkan dengan sebuah proses dalam satu waktu, dan timesharing berarti
menyediakan pembagian selang waktu yang tetap atau berubah-ubah untuk banyak
program. Multiprocessing adalah dukungan sebuah sistem untuk mendukung lebih
dari satu prosesor dan mengalokasikan tugas kepada prosesor-prosesor tersebut.
Multiprocessing sering diimplementasikan 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 di antaranya, atau tidak sama sekali. Pemrosesan
paralel dapat juga terjadi pada proses di antara prosedurprosedur atau perintah
perintah (segmen program) pada sebuah program.Untuk meningkatkan kecepatan
proses komputasi, dapat ditempuh dua cara :
Peningkatan
kecepatan perangkat keras.
Komponen utama
perangkat keras komputer adalah processor. Meskipun kecepatan processor dapat
ditingkatkan terus, namun karena keterbatasan materi pembuatnya, tentu ada
suatu batas kecepatan yang tak mungkin lagi dapat dilewati. Karena itu timbul
ide pembuatan komputer multiprocessor. Dengan adanya banyak processor dalam
satu komputer, pekerjaan bisa dibagi-bagi kepada masing-masing processor.
Dengan demikian lebih banyak proses dapat dikerjakan dalam satu saat.
Peningkatan kecepatan setiap proses bisa dicapai melalui peningkatan kecepatan
perangkat lunak. Kecepatan perangkat lunak sangat ditentukan oleh algoritmanya.
Peningkatan
kecepatan perangkat lunak.
Program
komputer untuk komputer sekuensial harus menyediakan sederetan operasi untuk
dikerjakan oleh prosesor tunggal. Program komputer untuk komputer paralel harus
menyediakan sederetan operasi untuk beberapa prosesor untuk dikerjakan secara
paralel, termasuk operasi untuk mengatur dan mengitegrasikan prosesor-prosesor
yang terpisah tersebut mengerjakan suatu komputasi yang koheren. Kebutuhan akan
pembuatan dan pengaturan berbagai aktivitas komputasi paralel menambah dimensi
baru proses dari pemrograman komputer. Algoritma untuk problem yang spesifik
harus diformulasikan sedemikian rupa, agar menghasilkan aliran operasi paralel
yang kemudian akan dieksekusi di prosesor yang berbeda. Karena itu, meskipun
arsitektur multiprosesor dan multikomputer mempunyai pontensi yang tinggi untuk
meningkatkan kemampuan komputasi, potensi ini akan tercapai melalui pengertian
yang baik mengenai bahasa pemrograman paralel dan perancangan algoritma
paralel.
Tingkat
Paralelisme
Berdasarkan
tingkat paralelismenya prosesor paralel dapat dibagi menjadi beberapa tingkat
sebagai berikut :
1. Komputer
Array :
a. Prosesor
array : beberapa prosesor yang bekerja sama untuk mengolah set instruksi yang
sama dan data yang berbeda – beda atau biasa disebut SIMD (Single
Instruction-stream Multiple Data)
b. Prosesor
vektor : beberapa prosesor yang disusun seperti pipeline.
2.
Multiprosesor, yaitu sebuah sistem yang memiliki 2 prosesor atau lebih yang
saling berbagi memori.
3.
Multikomputer, yaitu sebuah sistem yang memiliki 2 prosesor atau lebih yang
masing-masing prosesor memiliki memori sendiri.
Jenis-Jenis
Pemrosesan Paralel
Pemrosesan
paralel dapat dibagi ke dalam beberapa klasifikasi, sebagai berikut :
1. Berdasarkan
simetri penjadwalannya, pemrosesan parallel dapat dibagi dalam beberapa jenis:
a) Asymmetric
Multiprocessing (ASMP)
b) Symmetric
Multiprocessing (SMP)
c)
ClusteringPoliteknik Telkom Sistem Komputer
2. Berdasarkan
aliran instruksi dan datanya, pemrosesan parallel dapat dibagi dalam beberapa
jenis:
a) SISD
(Single Instruction on Single Data Stream)
b) SIMD
(Single Instruction on Multiple Data Stream)
c) MISD
(Multiple Instruction on Single Data Stream)
d) MIMD
(Multiple Instruction on Multiple Data Stream)
3. Berdasarkan
kedekatan antar prosesor, pemrosesan parallel dapat dibagi dalam beberapa
jenis:
a)
Multikomputer (Loosely Coupled/ local memory) dengan memori yang terdistribusi
b)
Multiprosesor (Tightly Coupled/ global memory) dengan memori yang dapat
digunakan bersama (shared memory)
Tidak ada komentar:
Posting Komentar