Komputasi 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 praktis, biasanya
berupa penerapan simulasi komputer atau berbagai bentuk komputasi lainnya untuk
menyelesaikan masalah-masalah dalam berbagai bidang keilmuan, tetapi dalam
perkembangannya digunakan juga untuk menemukan prinsip-prinsip baru yang
mendasar dalam ilmu.
Sedangkan pada komputasi modern bisa
diartikan sebagai cara untuk menemukan pemecahan masalah dari data input dengan
menggunakan suatu algoritma. Hal ini ialah apa yang disebut dengan teori
komputasi, suatu sub-bidang dari ilmu komputer dan matematika. Selama
ribuan tahun, perhitungan dan komputasi umumnya dilakukan dengan menggunakan pena
dan kertas, atau kapur dan batu tulis, atau dikerjakan secara mental,
kadang-kadang dengan bantuan suatu tabel. Namun sekarang, kebanyakan komputasi telah dilakukan dengan
menggunakan komputer.
TOKOH
YANG MEMBAWA PENGARUH BESAR DALAM PERKEMBANGAN KOMPUTASI MODERN
John von Neumann
John von Neumann (1903-1957), Beliau
adalah ilmuan yang meletakkan dasar-dasar komputer modern. Von Neumann telah
menjadi ilmuwan besar abad 21. Von Neumann memberikan berbagai sumbangsih dalam
bidang matematika, teori kuantum, game theory, fisika nuklir, dan ilmu komputer
yang di salurkan melalui karya-karyanya . Beliau juga merupakan salah satu
ilmuwan yang terkait dalam pembuatan bom atom di Los Alamos pada Perang Dunia
II lalu.
PARALLEL PROCESSING
Pemrosesan
parallel (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. Tetapi dalam praktek,seringkali sulit membagi
program sehingga dapat dieksekusi oleh CPU yang berbea-beda
tanpa berkaitan di antaranya
Sedangkan komputasi parallel adalah salah satu teknik melakukan komputasi
secara bersamaan denganmemanfaatkan beberapa komputer secara bersamaan.
Biasanyadiperlukan saat kapasitas yangdiperlukan sangat besar, baik karena
harus mengolah data dalam jumlah besar ataupun karenatuntutan proses komputasi
yang banyak. Untuk melakukan aneka jenis komputasi paralel ini diperlukan infrastruktur mesin paralel yang terdiri dari
banyak komputer yang dihubungkandengan jaringan dan mampu bekerja secara
paralel untuk menyelesaikan satu masalah. Untuk itudiperlukan 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
parallel 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 paraleladalah untuk meningkatkan performa komputasi.
Semakin banyak hal yang bisa dilakukan secara bersamaan (dalam waktu yang
sama), semakin banyak pekerjaan yang bisa diselesaikan.
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.
Ada 4 model komputasi yang digunakan,
yaitu:
·
SIMD
·
SIMD
·
MISD
·
MIMD
SISD 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 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 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 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.
untuk memperjelas perbedaan
, bisa digambarkan pada gambar di bawah:
Penyelesaian
Sebuah Masalah pada Komputasi Tunggal
Penyelesaian Sebuah
Masalah pada Komputasi Paralel
Hubungan
Komputasi Modern dengan Parallel Processing
Pemrosesan
paralel juga disebut komputasi paralel. Dalam upaya lebih murah pengolahan
komputasi paralel menyediakan alternatif pilihan yang layak. Waktu idle siklus
prosesor di seluruh jaringan dapat digunakan secara efektif oleh perangkat
lunak komputasi terdistribusi yang canggih. Pengolahan paralel istilah
digunakan untuk mewakili kelas besar teknik yang digunakan untuk memberikan
tugas pengolahan simultan data untuk tujuan meningkatkan kecepatan komputasi
dari sistem komputer. 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:
•waktu eksekusi lebih cepat.
•throughput jadi lebih tinggi.
Kerugian:
• perangkat keras lainnya yang dibutuhkan.
• kebutuhan daya juga lebih.
• Tidak baik untuk daya rendah dan perangkat mobile.
(parallel
processing adalah salah satu teknik komputasi modern)