Pengertian
Komputasi
Komputasi
adalah algoritma yang digunakan untuk menemukan suatu cara dalam memecahkan
masalah dari sebuah data input. Data input disini adalah sebuah masukan yang
berasal dari luar lingkungan sistem. Komputasi ini merupakan bagian dari ilmu
komputer berpadu dengan ilmu matematika. Secara umum ilmu komputasi adalah
bidang ilmu yang mempunyai perhatian pada penyusunan model matematika dan
teknik penyelesaian numerik serta penggunaan komputer untuk menganalisis dan
memecahkan masalah-masalah ilmu (sains). Dalam penggunaan secara umum, biasanya
berupa penerapan simulasi komputer atau berbagai bidang keilmuan, tetapi dalam
perkembangannya digunakan juga untuk menemukan prinsip-prinsip baru yang
mendasar terhadap bidang ilmu yang mendasari teori ini. Bidang ini berbeda
dengan ilmu komputer (computer science), yang mengkaji komputasi, komputer dan
pemrosesan informasi. Bidang ini juga berbeda dengan teori dan percobaan
sebagai bentuk tradisional dari ilmu dan kerja keilmuan. Dalam ilmu alam,
pendekatan ilmu komputasi dapat memberikan berbagai pemahaman baru, melalui
penerapan model-model matematika dalam program komputer berdasarkan landasan
teori yang telah berkembang, untuk menyelesaikan masalah-masalah nyata dalam
ilmu tersebut.
Parallel
PROCESSING
Pemrosesan
paralel (parallel processing) adalah penggunakan lebih dari satu CPU untuk
menjalankan sebuah program secara simultan.
Idealnya,
parallel processing membuat program berjalan lebih cepat karena semakin banyak
CPU yang digunakan.
TUJUAN
PARALLEL PROCESSING
Tujuan
utama dari pemrosesan paralel adalah untuk meningkatkan performa komputasi.
Semakin banyak hal yang bisa dilakukan secara bersamaan (dalam waktu yang
sama), semakin banyak pekerjaan yang bisa diselesaikan.
PARALLEL
PROCESSING
Komputasi
paralel
Komputasi
paralel adalah salah satu teknik melakukan komputasi secara bersamaan dengan
memanfaatkan beberapa komputer secara bersamaan.
Biasanya
diperlukan saat kapasitas yang diperlukan sangat besar, baik karena harus
mengolah data dalam jumlah besar ataupun karena tuntutan proses komputasi yang
banyak.
Untuk
melakukan aneka jenis komputasi paralel ini diperlukan infrastruktur mesin
paralel yang terdiri dari banyak komputer yang dihubungkan dengan jaringan dan
mampu bekerja secara paralel untuk menyelesaikan satu masalah. Untuk itu
diperlukan aneka perangkat lunak pendukung yang biasa disebut sebagai
middleware yang berperan untuk mengatur distribusi pekerjaan antar node dalam
satu mesin paralel. Selanjutnya pemakai harus membuat pemrograman paralel untuk
merealisasikan komputasi.
Pemrograman
Paralel sendiri adalah teknik pemrograman komputer yang memungkinkan eksekusi
perintah/operasi secara bersamaan. Bila komputer yang digunakan secara
bersamaan tersebut dilakukan oleh komputer-komputer terpisah yang terhubung
dalam satu jaringan komputer, biasanya disebut sistem terdistribusi. Bahasa
pemrograman yang populer digunakan dalam pemrograman paralel adalah MPI
(Message Passing Interface) dan PVM (Parallel Virtual Machine).
Yang
perlu diingat adalah komputasi paralel berbeda dengan multitasking. Pengertian
multitasking adalah komputer dengan processor tunggal mengeksekusi beberapa
tugas secara bersamaan. Walaupun beberapa orang yang bergelut di bidang sistem
operasi beranggapan bahwa komputer tunggal tidak bisa melakukan beberapa
pekerjaan sekaligus, melainkan proses penjadwalan yang berlakukan pada sistem
operasi membuat komputer seperti mengerjakan tugas secara bersamaan. Sedangkan
komputasi paralel sudah dijelaskan sebelumnya, bahwa komputasi paralel
menggunakan beberapa processor atau komputer. Selain itu komputasi paralel
tidak menggunakan arsitektur Von Neumann.
Untuk
lebih memperjelas lebih dalam mengenai perbedaan komputasi tunggal (menggunakan
1 processor) dengan komputasi paralel (menggunakan beberapa processor), maka
kita harus mengetahui terlebih dahulu pengertian mengenai model dari komputasi
SISD
Yang
merupakan singkatan dari Single Instruction, Single Data adalah satu-satunya
yang menggunakan arsitektur Von Neumann. Ini dikarenakan pada model ini hanya
digunakan 1 processor saja. Oleh karena itu model ini bisa dikatakan sebagai
model untuk komputasi tunggal. Sedangkan ketiga model lainnya merupakan komputasi
paralel yang menggunakan beberapa processor. Beberapa contoh komputer yang
menggunakan model SISD adalah UNIVAC1, IBM 360, CDC 7600, Cray 1 dan PDP 1.
SIMD
Yang
merupakan singkatan dari Single Instruction, Multiple Data. SIMD menggunakan
banyak processor dengan instruksi yang sama, namun setiap processor mengolah
data yang berbeda. Sebagai contoh kita ingin mencari angka 27 pada deretan
angka yang terdiri dari 100 angka, dan kita menggunakan 5 processor. Pada
setiap processor kita menggunakan algoritma atau perintah yang sama, namun data
yang diproses berbeda. Misalnya processor 1 mengolah data dari deretan / urutan
pertama hingga urutan ke 20, processor 2 mengolah data dari urutan 21 sampai
urutan 40, begitu pun untuk processor-processor yang lain. Beberapa contoh
komputer yang menggunakan model SIMD adalah ILLIAC IV, MasPar, Cray X-MP, Cray
Y-MP, Thingking Machine CM-2 dan Cell Processor (GPU).
MISD
Yang
merupakan singkatan dari Multiple Instruction, Single Data. MISD menggunakan
banyak processor dengan setiap processor menggunakan instruksi yang berbeda
namun mengolah data yang sama. Hal ini merupakan kebalikan dari model SIMD.
Untuk contoh, kita bisa menggunakan kasus yang sama pada contoh model SIMD
namun cara penyelesaian yang berbeda. Pada MISD jika pada komputer pertama,
kedua, ketiga, keempat dan kelima sama-sama mengolah data dari urutan 1-100,
namun algoritma yang digunakan untuk teknik pencariannya berbeda di setiap
processor. Sampai saat ini belum ada komputer yang menggunakan model MISD.
MIMD
Yang
merupakan singkatan dari Multiple Instruction, Multiple Data. MIMD menggunakan
banyak processor dengan setiap processor memiliki instruksi yang berbeda dan
mengolah data yang berbeda. Namun banyak komputer yang menggunakan model MIMD
juga memasukkan komponen untuk model SIMD. Beberapa komputer yang menggunakan
model MIMD adalah IBM POWER5, HP/Compaq AlphaServer, Intel IA32, AMD Opteron,
Cray XT3 dan IBM BG/L.
kita
dapat menyimpulkan bahwa kinerja komputasi paralel lebih efektif dan dapat
menghemat waktu untuk pemrosesan data yang banyak daripada komputasi tunggal.
Dari
penjelasan-penjelasan di atas, kita bisa mendapatkan jawaban mengapa dan kapan
kita perlu menggunakan komputasi paralel. Jawabannya adalah karena komputasi
paralel jauh lebih menghemat waktu dan sangat efektif ketika kita harus
mengolah data dalam jumlah yang besar. Namun keefektifan akan hilang ketika
kita hanya mengolah data dalam jumlah yang kecil, karena data dengan jumlah
kecil atau sedikit lebih efektif jika kita menggunakan komputasi tunggal.
Komputasi
paralel membutuhkan :
·
algoritma
·
bahasa pemrograman
·
compiler
Pemrograman
paralel adalah teknik pemrograman komputer yang memungkinkan eksekusi
perintah/operasi secara bersamaan baik dalam komputer dengan satu (prosesor
tunggal) ataupun banyak (prosesor ganda dengan mesin paralel) CPU.
Tujuan
utama dari pemrograman paralel adalah untuk meningkatkan performa komputasi.
*
Message Passing Interface (MPI)
MPI
adalah sebuah standard pemrograman yang memungkinkan pemrogram
untuk
membuat sebuah aplikasi yang dapat dijalankan secara paralel.
MPI
menyediakan fungsi-fungsi untuk menukarkan
antar
pesan. Kegunaan MPI yang lain adalah
1.
menulis kode paralel secara portable
2.
mendapatkan performa yang tinggi dalam pemrograman paralel, dan
3.
menghadapi permasalahan yang melibatkan hubungan data irregular atau dinamis
yang tidak
begitu
cocok dengan model data paralel.
*
Message Passing Interface (MPI)
MPI
adalah sebuah standard pemrograman yang memungkinkan pemrogram
untuk
membuat sebuah aplikasi yang dapat dijalankan secara paralel.
MPI
menyediakan fungsi-fungsi untuk menukarkan
antar
pesan. Kegunaan MPI yang lain adalah
1.
menulis kode paralel secara portable
2.
mendapatkan performa yang tinggi dalam pemrograman paralel, dan
3.
menghadapi permasalahan yang melibatkan hubungan data irregular atau dinamis
yang tidak
begitu
cocok dengan model data paralel.
Hubungan
antara Komputasi Modern dengan Paralel Processing
Hubungan
antara komputasi modern dan parallel processing sangat berkaitan, karena
penggunaan komputer saat ini atau komputasi dianggap lebih cepat dibandingkan
dengan penyelesaian masalah secara manual. Dengan begitu peningkatan kinerja
atau proses komputasi semakin diterapkan, dan salah satu caranya adalah dengan
meningkatkan kecepatan perangkat keras. Dimana komponen utama dalam perangkat
keras komputer adalah processor. Sedangkan parallel processing adalah
penggunaan beberapa processor (multiprocessor atau arsitektur komputer dengan
banyak processor) agar kinerja computer semakin cepat.
Kinerja
komputasi dengan menggunakan paralel processing itu menggunakan dan
memanfaatkan beberapa komputer atau CPU untuk menemukan suatu pemecahan masalah
dari masalah yang ada. Sehingga dapat diselesaikan dengan cepat daripada
menggunakan satu komputer saja. Komputasi dengan paralel processing akan
menggabungkan beberapa CPU, dan membagi-bagi tugas untuk masing-masing CPU
tersebut. Jadi, satu masalah terbagi-bagi penyelesaiannya. Tetapi ini untuk
masalah yang besar saja, komputasi yang masalah kecil, lebih murah menggunakan
satu CPU saja.
Kelebihan :
Dalam artikel komputasi dan paralel processing ini menggunakan bahasa yang
mudah dimengerti sehingga pembaca dapat memahami tulisan tersebut dengan jelas.
Penjelasan mengenai hubungan antara komputasi modern dan parallel processing
mudah dipahami. Hubungan satu sama lain dalam artikel ini jelas.
Kekurangan:
Dalam artikel komputasi dan paralel processing ini penjelasan yang
diberikan kurang mendetail seperti tidak adanya penjelasan mengenai
pengertian-pengertian dari istilah yang digunakan. Dalam penulisan artikel ini
penggunaan tanda baca juga sedikit berantakan dan tidak sesuai dengan tata cara
penulisan yang baik dan benar.
Sumber