If we learn one new thing about our deen everyday we open our minds to a better day

Rabu, 17 Juni 2015

Hubungan Antara Komputasi Modern Dengan Parallel Processing

00.50 Posted by Ramadhani
Parallel processing adalah penggunaan lebih dari satu CPU untuk menjalankan sebuah program secara simultan. Idealnya, paralel 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 berbeda-beda tanpa ada keterkaitan diantaranya.

Sebagian besar komputer hanya mempunyai satu CPU, namun ada yang mempunyai lebih dari satu. Bahkan juga ada komputer dengan ribuan CPU. Komputer dengan satu CPU dapat melakukan parallel processing dengan mneghubungkannya dengan komputer lain pada jaringan. Namun, parallel processing ini memerlukan software canggih yang disebut distributed processing software.

Paralel processing berbeda dengan multitasking, yaitu satu CPU mengeksekusi beberapa program sekaligus. Paralel processing disebut juga parallel computing. Parallel computing adalah salah satu teknik melakukan komputasi secara bersamaan. Biasanya digunakan saat kapasitas yang dibutuhkan 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 berbagai perangkat lunak pendukung yang disebut middleware yang berperan untuk mengatur distribusi pekerjaan antar node dalam satu mesin paralel. Selanjutnya pemakai harus membuat pemrograman paralel untuk merealisasikan komputasi.

http://blog.ub.ac.id/fauziahmayasari/files/2012/07/112.png
Gambar 1. Contoh struktur pengiriman permintaan dan jawaban dari parallel processing

Arsitektur Komputer Parallel

Berikut Taksonomi Flynn dan model pemrosesan parallel:

http://blog.ub.ac.id/fauziahmayasari/files/2012/07/25.png

 Gambar 2. Model Pemrosesan Paralel

Keempat kelompok komputer tersebut adalah :

  1. Komputer SISD (Single Instruction stream-Single Data stream) 
  • Pada komputer jenis ini semua instruksi dikerjakan terurut satu demi satu, tetapi juga dimungkinkan adanyaoverlapping dalam eksekusi setiap bagian instruksi (pipelining). Pada umumnya komputer SISD berupa komputer yang terdiri atas satu buah pemroses (single processor). Namun komputer SISD juga mungkin memiliki lebih dari satu unit fungsional (modul memori, unit pemroses, dan lain-lain), selama seluruh unit fungsional tersebut berada dalam kendali sebuah unit pengendali. Skema arsitektur global komputer SISD dapat dilihat pada gambar 3.1
http://blog.ub.ac.id/fauziahmayasari/files/2012/07/sisd1.png
Gambar 3.1 SISD

  1. Komputer SIMD (Single Instruction stream-Multiple Data stream)
  • Pada komputer SIMD terdapat lebih dari satu elemen pemrosesan yang dikendalikan oleh sebuah unit pengendali yang sama. Seluruh elemen pemrosesan menerima dan menjalankan instruksi yang sama yang dikirimkan unit pengendali, namun melakukan operasi terhadap himpunan data yang berbeda yang berasal dari aliran data yang berbeda pula. Skema arsitektur global komputer SIMD dapat dilihat pada gambar 3.2
 http://blog.ub.ac.id/fauziahmayasari/files/2012/07/simd1.png
Gambar 3.2 SIMD

  1. Komputer MISD (Multiple Instruction stream-Single Data stream)
  • Komputer jenis ini memiliki unit pemroses yang masing-masing menerima dan mengoperasikan instruksi yang berbeda terhadap aliran data yang sama, dikarenakan setiap unit pemroses memiliki unit pengendali yang berbeda. Keluaran dari satu pemroses menjadi masukan bagi pemroses berikutnya. Belum ada perwujudan nyata dari komputer jenis ini kecuali dalam bentuk prototipe untuk penelitian. Skema arsitektur global komputer MISD dapat dilihat pada gambar 3.3
 http://blog.ub.ac.id/fauziahmayasari/files/2012/07/misd1.png
Gambar 3.3. MISD

  1. Komputer MIMD (Multiple Instruction stream-Multiple Data stream)
  • Pada sistem komputer MIMD murni terdapat interaksi di antara pemroses. Hal ini disebabkan seluruh aliran dari dan ke memori berasal dari space data yang sama bagi semua pemroses. Komputer MIMD bersifat tightly coupledjika tingkat interaksi antara pemroses tinggi dan disebutloosely coupled jika tingkat interaksi antara pemroses rendah.  Skema arsitektur global komputer MISD dapat dilihat pada gambar 3.4
http://blog.ub.ac.id/fauziahmayasari/files/2012/07/mimd1.png
Gambar 3.4 MIMD

Paralel prosessing komputasi adalah proses atau pekerjaan komputasi di komputer dengan memakai suatu bahasa pemrograman yang dijalankan secara paralel pada saat bersamaan. Secara umum komputasi paralel diperlukan untuk meningkatkan kecepatan komputasi bila dibandingkan dengan pemakaian komputasi pada komputer tunggal.
Berikut ini adalah gambar perbedaan antara komputasi tunggal dengan parallel komputasi :

 http://blog.ub.ac.id/fauziahmayasari/files/2012/07/4.1.png
Gambar 4.1. Komputasi Tunggal / serial

 http://blog.ub.ac.id/fauziahmayasari/files/2012/07/4.2.png
Gambar 4.2. Komputasi Paralel



  
Hubungan Antara Komputasi Modern Dengan Parallel Processing

Komputasi Modern merupakan sebuah sistem yang akan menyelesaikan masalah matematis menggunakan komputer dengan cara menyusun algoritma yang dapat dimengerti oleh komputer yang berguna untuk menyelesaikan suatu masalah.  Dalam komputasi modern terdapat perhitungan dan pencarian solusi dari masalah. Perhitungan dari komputasi modern adalah akurasi, kecepatan, problem, volume dan besar serta kompleksitas.

Sedangkan konsep parallel processing adalah bagaimana membangun sebuah ekosistem dimana komputer mandiri dapat mengerjakan serangkaian tugas secara bersama dalam waktu yang bersamaan dan bersifat kontinyu.

Dalam kondisi teknologi sekarang ini, komputasi modern bagaikan selalu berdampingan dengan parallel processing. Sebagian besar perusahaan berbasisi internet seperti google, facebook, twitter pasti memiliki ekosistem server yang menerapkan parallel processing untuk menjaga kecepatan akses dari server. Ataupun prosessor handphone kita yang memiliki lebih dari satu “otak” sehingga dapat menyelesaikan proses lebih cepat.