Ada dua tujuan
utama menggunakan komputasi paralel: untuk memperkecil waktu pengeksekusia n
program (decrease the runtime) dan untuk memperbesar ruang lingkup
pemecahan masalah (increase the size of the problem). Pemrograman pada
grid dapat menggunakan model Message Passing Interface (MPI) dan GridRPC.
Pemrograman paralel beserta
pengeksekusiannya dilakukan dengan empat langkah:
1. Pemecahan tugas komputasi
menjadi sub-tugas (decomposition of computation
in tasks).
2. Penyerahan tugas pada proses
komputer (assignment of tasks to processes).
3. Pengaturan akses data, proses
sinkronisasi dan komunikasi (orchestration of
data access,
communication and synchronization).
4. Memetakan proses ke processor
(mapping processes to processors).
MPI adalah
teknik pemrograman yang berdasarkan data parallel dengan Single Program
Multiple Data (SPMD). Maksudnya adalah setiap proses mengeksekusi program
yang sama tetapi menggunakan data yang berbeda. Untuk sharing data, suatu proses
secara eksplisit mengirimkan data kepada proses penerima yang juga menerima data
secara eksplisit.
MPI bukan
merupakan bahasa pemrograman baru, tetapi MPI adalah subprogram library yang
dapat dipanggil dari program C dan Fortran 77. Ada dua implementasi MPI untuk
grid: GridMPI yang dibuat oleh National Institute of Advanced
Industrial Science and Technology (AIST) dan MPICH-G2 yang dibuat oleh
Argonne National La boratory (ANL) . GridMPI adalah implementasi MPI untuk
jarak antar komputer sampai dengan 500 mil yang terkoneksi dengan jaringan berkecepatan
1 sampai dengan 10 Gbps sedangkan MPICH-G2 adalah implementasi MPI
dengan menggunakan Globus Toolkit (standar middleware komputasi grid)
dalam lingkungan WAN.
GridRPC adalah
teknik pemrograman yang berdasarkan task parallel dengan model client/server
yang merupakan ekstensi dari remote procedure call. Setiap task melakukan
fungsi/perhitungan yang berbeda/sama dan (hampir) tidak ada komunikasi antar-task
pada saat running (embarrassingly parallel tasks). Ada beberapa implementasi
dari GridRPC: Distributed Interactive Engineering Toolbox (DIET), NetSolve
dan Ninf-G . Ninf-G menggunakan Globus Toolkit untuk memonitor dan
mengatur sumber daya (resource monitoring and scheduling), keamanan akses sumber
daya dan menyediakan client binding untuk bahasa C dan Java. NetSolve mengimplementasikan
GridRPC dengan mengintegrasikan berbagai macam Problem Solving Environment
(PSE) client seperti Matlab, Mathematica dan Octave. DIET menggunakan CORBA
Naming Service untuk melakukan registrasi dan pencarian sumber daya.
Komputasi
parallel pada grid computing memungkinkan penggunaan sumberdaya secara
bersamaan yang terhubung pada jaringan grid yang terpisah secara geografis. Komputasi
parallel yang diterapkan akan membuat seolah-olah semua mesin yang ada pada
jaringan grid adalah sebuah kesatuan mesin sehingga dapat membantu dalam proses
penyelesain masalah dengan lebih cepat.
Sumber :
Tidak ada komentar:
Posting Komentar