Komputasi dan Paralel Processing
Pengertian Komputasi
Komputasi sebetulnya bisa
diartikan sebagai cara untuk menemukan pemecahan masalahdari datainput dengan
menggunakan suatu algoritma. Hal ini ialah apa yang disebut dengan teorikomputasi,
suatu sub-bidang dariilmu 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.
Secara umum iIlmu komputasi
adalah bidang ilmu yang mempunyai perhatian pada penyusunan modelmatematika dan
teknik penyelesaian numerik serta penggunaan komputer untuk menganalisis dan
memecahkan masalah-masalahilmu (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.
Bidang ini berbeda dengan ilmu
komputer (computer science), yang mengkaji komputasi, komputer dan pemrosesan
informasi. bidang ini juga berbeda dengan teori dan percobaansebagai bentuk
tradisional dari ilmu dan kerja keilmuan. Dalam ilmu alam, pendekatan
ilmukomputasi dapat memberikan berbagai pemahaman baru, melalui penerapan
model-modelmatematika dalam program komputer berdasarkan landasan teori yang
telah berkembang, untuk menyelesaikan masalah-masalah nyata dalam ilmu tersebut
modern.
Pengertian Parallel Processing
Paralel Processing adalah
kemampuan menjalankan tugas atau aplikasi lebih dari satu aplikasi dan
dijalankan secara simultan atau bersamaan pada sebuah komputer. Secara umum,
ini adalah sebuah teknik dimana sebuah masalah dibagi dalam beberapa masalah
kecil untuk mempercepat proses penyelesaian masalah.
Terdapat dua hukum yang
berlaku dalam sebuah parallel processing. yaitu:
- Hukum Amdahl
- Hukum Gustafson
Tujuan Komputasi Paralel
Tujuan dari komputasi paralel
adalah meningkatkan kinerja komputer dalam menyelesaikan berbagai masalah.
Dengan membagi sebuah masalah besar ke dalam beberapa masalah kecil, membuat
kinerja menjadi cepat.
Formula komputasi paralel yang
diajukan pada hukum Amdahl
Dimana a adalah banyaknya
paralel yang terjadi. Secara teori, artinya proses penyelesaian masalah menjadi
lebih cepat dengan menggunakan komputasi paralel.
Salah satu jenis penggunaan
komputasi paralel adalah:
PVM(Parallel Virtual Machine)
Merupakan sebuah perangkat
lunak yang mampu mensimulasikan pemrosesan paralel pada jaringan.
Model komputasi Paralel.
Embarasingly
Parallel adalah pemrograman paralel yang digunakan pada masalah-masalah yang
bisa diparalelkan tanpa membutuhkan komunikasi satu sama lain. Sebenarnya
pemrograman ini bisa dibilang sebagai pemrograman paralel yang ideal, karena
tanpa biaya komunikasi, lebih banyak peningkatan kecepatan yang bisa dicapai.
Taksonomi
dari model pemrosesan paralel dibuat berdasarkan alur instruksi dan alur data
yang digunakan:
- SISD (Single Instruction Single Datapath) merupakan prosesor tunggal, yang bukan paralel.
- SIMD (Single Instruction Multiple Datapath)alur instruksi yang sama dijalankan terhadap banyak alur data yang berbeda. Alur instruksi di sini kalau tidak salah maksudnya ya program komputer itu. trus datapath itu paling ya inputnya, jadi inputnya lain-lain tapi program yang digunakan sama.
- MIMD (Multiple Instruction Multiple Datapath)alur instruksinya banyak, alur datanya juga banyak, tapi masing-masing bisa berinteraksi.
- MISD (Multiple Instruction Single Datapath)alur instruksinya banyak tapi beroperasi pada data yang sama.
Hubungan antara Komputasi Modern dengan Paralel Processing
Hubungan antara komputasi
modern dan parallel processing sangat berkaitan, karena penggunaankomputer saat
ini atau komputasi dianggap lebih cepat dibandingkan dengan penyelesaian
masalahsecara manual. Dengan begitu peningkatan kinerja atau proses komputasi
semakin diterapkan, dansalah satu caranya adalah dengan meningkatkan kecepatan
perangkat keras. Dimana komponen utamadalam perangkat keras komputer adalah
processor. Sedangkan parallel processing adalah penggunaanbeberapa processor
(multiprocessor atau arsitektur komputer dengan banyak processor) agar
kinerjacomputer semakin cepat.
Kinerja komputasi dengan
menggunakan paralel processing itu menggunakan dan memanfaatkanbeberapa
komputer atau CPU untuk menemukan suatu pemecahan masalah dari masalah yang ada.
Sehingga dapat diselesaikan dengan cepat daripada menggunakan satu komputer
saja. Komputasidengan 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 yangbesar saja,
komputasi yang masalah kecil, lebih murah menggunakan satu CPU saja.
Implementasi Model Komputasi Paralel
1. PVM
PVM (Parallel Virtual Machine)
adalah paket software yang mendukung pengiriman pesan untuk komputasi parallel
antar komputer. PVM dapat berjalan diberbagai macam variasi UNIX atau pun
windows dan telah portable untuk banyak arsitektur seperti PC, workstation,
multiprocessor dan superkomputer.
Sistem PVM terbagi menjadi
dua. Pertama adalah daemon, pvmd, yang berjalan pada mesin virtual
masing-masing komputer. Mesin virtual akan dibuat, ketika User mengeksekusi
aplikasi PVM. PVM dapat dieksekusi melalui prompt UNIX disemua host. Bagian
kedua adalah library interface rutin yang mempunyai banyak fungsi untuk komunikasi
antar task. Library ini berisikan rutin yang dapat dipanggil untuk pengiriman
pesan, membuat proses baru, koordinasi task dan konfigurasi mesin virtual.
Salah aturan main yang penting
dalam PVM adalah adanya mekanisme program master dan slave/worker. Programmer
harus membuat Kode master yang menjadi koordinator proses dan Kode slave yang
menerima, menjalankan, dan mengembalikan hasil proses ke komputer master. Kode
master dieksekusi paling awal dan kemudian melahirkan proses lain dari kode
master. Masing-masing program ditulis menggunakan C atau Fortran dan
dikompilasi dimasing-masing komputer. Jika arsitektur komputer untuk komputasi
paralel semua sama, (misalnya pentium 4 semua), maka program cukup dikompilasi
pada satu komputer saja. Selanjutnya hasil kompilasi didistribusikan kekomputer
lain yang akan menjadi node komputasi parallel. Program master hanya berada
pada satu node sedangkan program slave berada pada semua node.
Komunikasi dapat berlangsung
bila masing-masing komputer mempunyai hak akses ke filesystem semua komputer.
Akses kefile system dilakukan melalui protokol rsh yang berjalan di unix atau
windows. Berikut adalah langkah pengaturan pada masing-masing komputer:
- Buat file hostfile yang berisi daftar node komputer dan nama user yang akan dipakai untuk komputasi parallel. Bila nama user pada semua komputer sama misalnya nama user riset pada komputer C1, C2, C3 dan C4, maka hostfile ini boleh tidak ada. Hostfile ini dapat digunakan bila nama user di masing-masing komputer berbeda.
- Daftarkan IP masing-masing komputer pada file /etc/hosts/hosts.allow dan /etc/hosts/hosts.equiv.
- Penambahan dan penghapusan host secara dinamis dapat dilakukan melalui konsole PVM. Bila IP tidak didefinisikan pada hostfile¸ cara ini dapat digunakan.
Program PVM terdiri dari
master dan slave, dimana program master dieksekusi paling awal dan kemudian
melahirkan proses lain. PVM memanggil rutin pvm_spawn() untuk melahirkan satu
atau dua proses lebih yang sama. Fungsi-fungsi untuk PVM versi bahasa C
mempunyai rutin awalan pvm. Pengiriman dan penerimaan task diidentifikasi
dengan TID (Task Identifier). TID ini bersifat unik dan digenerate oleh pvmd
lokal. PVM berisi beberapa rutine yang mengembalikan nilai TID sehingga
aplikasi user dapat mengidentifikasi task lain disistem.
Secara umum, langkah
implementasi komputasi parallel sebagai berikut:
- Jalankan PVM daemon pada setiap mesin dalam cluster
- Jalankan program master pada master daemon
- Master daemon akan menjalankan proses slave.
2. POV-Ray
POV-Ray (Persistence Of Vision
Raytracer – www.povray.org) adalah rendering engine 3 dimensi . Program ini
menterjemahkan informasi dari file teks eksternal, mensimulasikan suatu cahaya
yang berinteraksi dengan obyek dalam suatu scene untuk menghasilkan obyek 3
dimensi yang nyata. Berawal dari file teks yang berisi deskripsi dari scene (objects,
lights, point o f view), programini dapat merender citra yang diinginkan.
Algoritmanya bekerja baris demi baris. Fasilitas yang menarik dari POV-Ray ini
adalah antialiasing. Antialiasing adalah teknik yang membantu untuk membuang
sampling error, yang dapat menghasilkan c itra lebih baik.
Dengan menggunakan
antialiasing, POV-Ray memulai tracing a ray untuk setiap pixel. Jika warna dari
pixel berbeda dengan warna pixel tetangganya (pixel yang ada di sebelah kiri
dan di atas), kemudian dari jumlahnya lebih besar dari nilai th reshold, maka
pixel tersebut adalah supersampled tracing a fixed number of additional rays.
Teknik ini disebut supersampling dan dapat meningkatkan kualitas akhir dari
sebuah citra namun itu juga meningkatkan waktu rendering menjadi lebih lama.
Setelah men guraikan data input, POV-Ray menguraikan semua pixel dari citra
untuk proses render, melalui horizontal scan dari setiap baris dari kiri ke
kanan. Setelah selesai penguraian dari suatu baris maka akan ditulis dalam
sebuah file atau ditampilkan pada layar lalu memperhitungkan baris berikutnya
sampai pada yang terakhir.
0 Comments