Posted on

Parallel Processing

Pendahuluan

Simultan menggunakan lebih dari satu CPU untuk mengeksekusi program. Idealnya, parallel processing membuat program berjalan lebih cepat karena terdapat lebih banyak engine (CPUs) yang menjalankannya. Pada prakteknya, terkadang hal itu susah untuk mendivide program dimana pemisahan CPu dapat mengeksekusi dengan porsi yang berbeda tanpa satu sama lain bertemu.

Kebanyakan computer hanya memiliki satu CPU, tapi beberapa model memiliki lebih dari satu. Dan bahkan terdapat computer yang memiliki ratusan CPU. Dengan computer yang single-CPU, itu mungkin untuk melakukan atau menampilkan parallel processing dari koneksi computer di network. Tetapi, tipe parallel processing ini memerlukan perangkat lunak yang sangat canggih yang disebut distributed processing software.

Parallel Processing

Parallel processing atau pemrosesan paralel memiliki pengertian yaitu penggunaan  pada lebih dari satu CPU untuk menjalankan sebuah program secara simultan, atau penggunaan dua atau lebih tugas pada waktu yang sama dengan tujuan mempersingkat waktu penyelesaian tugas-tugas tersebut dengan cara mengoptimalkan resource pada sistem komputer yang ada pada tujuan yang sama. Maksudnya program dijalankan dengan banyak CPU secara bersamaan dengan tujuan untuk membuat program yang lebih baik dan dapat diproses dengan cepat. Dapat diambil kesimpulan bahwa pada parallel processing berbeda dengan istilah multitasking, yaitu satu CPU mengangani atau mengeksekusi beberapa program sekaligus, parallel processing dapat disebut juga dengan istilah parallel computing.

Pemrosesan paralel dapat mempersingkat waktu eksekusi suatu program dengan cara membagi suatu program menjadi bagian yang lebih kecil agar dapat dikerjakan pada masing-masing prosesor secara bersamaan. Performa dalam pemrosesan paralel diukur dari beberapa banyak peningkatan kecepatan yang diperoleh dalam menggunakan teknik paralel. Pada proses kerja pemrosesan paralel yaitu membagi beban kerja dan mendistribusikannya pada komputer-komputer lain yang terdapat dalam sistem untuk menyelesaikan masalah. Sistem yang akan dibangun tidak akan menggunakan komputer yang didedikasikan secara khusus untuk keperluan pemrosesan paralel melainkan menggunakan komputer yang telah ada. Maksudnya sistem ini akan terdiri dari sejumlah komputer dengan spesifikasi berbeda yang akan bekerja sama untuk menyelesaikan suatu masalah.

Adapun proses kerja , pemrosesan paralel membagi beban kerja dan mendistribusikannya pada komputer-komputer lain yang terdapat dalam sistem untuk menyelesaikan suatu masalah. Sistem yang akan dibangun akan tidak akan menggunakan komputer yang didesikasikan secara khusus untuk keperluan pemrosesan paralel melainkan menggunakan komputer yang telah ada. Artinya, sistem ini nantinya akan terdiri dari sejumlah komputer dengan spesifikasi berbeda yang akan bekerjasama untuk menyelesaikan suatu masalah.

Komputasi Dengan Parallel Processing

Komputasi Paralel adalah salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer independen secara bersamaan. Biasanya digunakan untuk kapasitas yang pengolahan data yang sangat besar (lingkungan industri, bioinformatika dll) atau karena tuntutan komputasi yang banyak. Kasus kedua biasanya ditemukan di kalkulasi numerik untuk menyelesaikan persamaan matematis di bidang fisika (fisika komputasi), kimia (kimai komputasi) dan lainnya.

Untuk melakukan berbagai jenis komputasi paralel diperlukan infrastruktur mesin paralel yang terdiri dari banyak komputer yang dihubungkan dengan jaringan dan mampu bekerja secara paralel untuk menyelesaikan satu masalah. Untuk digunakan perangkat lunak pendukung yang biasa disebut middleware yang berperan mengatur distribusi antar titik dalam satu mesin paralel. Selanjutnya pemakai harus membuat pemrograman paralel untuk merealisasikan komputasi. Salah satu middleware yang asli dikembangkan di Indonesia adalah OpenPC yang dipelopori oleh GFTK LIPI dan diimplementasikan di LIPI Public Center.

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. Ada 4 model komputasi yang digunakan, yaitu:

  • SIMD
  • SIMD
  • MISD
  • MIMD

 

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.

Singkatnya untuk perbedaan antara komputasi tunggal dengan komputasi paralel, bisa digambarkan pada gambar di bawah ini:

tunggal

Gambar 1 : Penyelesaian Sebuah Masalah pada Komputasi Tunggal

parallel

Gambar 2: Penyelesaian Sebuah Masalah pada Komputasi Paralel

Dari perbedaan kedua gambar di atas, 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.

Sumber:

file:///C:/Users/Gunadarma/Downloads/10%20Parallel%20Processing.pdf

http://dokumen.tips/documents/pengertian-pemrosesan-paralel.html

http://rian.web.id/komputasi_dengan_parallel_processing.html

http://www.webopedia.com/TERM/P/parallel_processing.html

 

 

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s