Senin, 10 April 2017

PARALLEL COMPUTING

PENGANTAR KOMPUTASI 

MODERN

Parallel Computing


Abstrak
     Kemajuan Teknologi jaman sekarang sangat pesat. masyarakat berlomba - lomba untuk mempelajari teknologi - teknologi baru yang tentunya lebih canggih. Teknologi computer adalah sebuah hal yang sangat pesat perkembangan dan kemajuannya pada jaman sekarang. Parallel computation adalah suatu teknik untuk mengerjakan suatu perhitungan yang besar dan memerlukan waktu yang lama dengan memecah menjadi beberapa bagian dan mengerjakannya secara independen di prosesor yang berbeda.

 Pendahuluan
     Enkripsi merupakan teknik yang umum digunakan untuk meningkatkan keamanan suatu data, tak terkecuali untuk citra. Tidak terkecuali untuk citra. Sebagai tambahan dalam level keamanan, kecepatan eksekusi suatu algoritma enkripsi menjadi bagian yang paling penting. Salah satu algoritma enkripsi yang cukup luas diterapkan adalah Advanced Encryption Standards (AES). AES menggunakan key yang lebih panjang daripada algoritma Data Encryption Standard (DES). 
     Java Parallel Programming Framework (JPPF) merupakan framework untuk pemrosesan paralel yang menggunakan bahasa pemrograman Java. Pada JPPF tersedia beberapa strategi pendistribusian job untuk mengoptimalkan performa dengan menyesuaikan jumlah task yang dikirim ke setiap slave. JPPF juga memiliki mekanisme untuk menanggulangi masalah apabila terjadi kegagalan komunikasi dengan master.

Pembahasan
Definisi
     Parallel computation adalah suatu teknik untuk mengerjakan suatu perhitungan yang besar dan memerlukan waktu yang lama dengan memecah menjadi beberapa bagian dan mengerjakannya secara independen di prosesor yang berbeda. Jurnal yang akan di-review ini membahas tentang implementasi komputasi paralel untuk mengenkripsi berkas citra menggunakan AES dengan menggunakan JPPF.
     Komputasi paralel biasanya diperlukan pada saat terjadinya pengolahan data dalam jumlah besar ( di industri keuangan, bioinformatika, dll ) atau dalam memenuhi proses komputasi yang sangat banyak. Selanjutnya, komputasi paralel ini juga dapat ditemui dalam kasus kalkulasi numerik dalam penyelesaian persamaan matematis di bidang fisika ( fisika komputasi ), kimia ( kimia komputasi ), dll. Dalam menyelesaikan suatu masalah, komputasi paralel memerlukan infrastruktur mesin paralel yang terdiri dari banyak komputer yang dihubungkan dengan jaringan dan mampu bekerja secara paralel.
     Konsep paralel adalah sebuah kemampuan prosesor untuk melakukan sebuah tugas ataupun banyak tugas secara simultan ataupun bersamaan, dengan kata lain prosesor mampu melakukan satu ataupun banyak tugas dalam satu waktu.

Kajian Teori
     Komputasi paralel adalah suatu teknik untuk mengerjakan suatu perhitungan yang besar dan memerlukan waktu yang lama dengan memecah menjadi beberapa bagian dan mengerjakannya secara independen di prosesor yang berbeda.
Terdapat beberapa style pemrograman paralel, antara lain:
  1. SPMD (Single Program, Multiple Data), yaitu data dan program didistribusikan ke tiap prosesor, eksekusi dilakukan sesuai jadwal yang telah ditentukan. Tiap prosesor mengeksekusi program yang sama tetapi data yang diproses berbeda.
  2. Master/slave, yaitu satu prosesor bertindak sebagai master, dan ada beberapa prosesor yang menjadi slave kepada master tersebut.
  3. MPMD (Multiple Program, Multiple Data), yaitu program dan data didistribusikan ke tiap-tiap prosesor, tiap prosesor mengeksekusi program yang berbeda dan data yang berbeda.
     JPPF adalah adalah suatu framework yang dibangun dengan bahasa Java. JPPF memungkinkan aplikasi dengan kebutuhan komputasi yang tinggi agar dapat berjalan pada sejumlah komputer, dalam rangka untuk mengurangi waktu pemrosesan. Hal ini dilakukan dengan membagi aplikasi menjadi bagian-bagian yang lebih kecil yang dapat dieksekusi secara bersama-sama di mesin yang berbeda.
   Keunggulan JPPF terhadap framework lain adalah JPPF menyediakan beberapa strategi pendistribusian job untuk mengoptimalkan performa dengan menyesuaikan jumlah task yang dikirim ke setiap slave. Tiap strategi distribusi job memiliki keunggulan terhadap suatu jenis permasalahan yang akan diselesaikan secara paralel. Selain itu, JPPF memiliki fitur mekanisme untuk menangani kegagalan komunikasi. Secara otomatis JPPF client dan slave akan mencari master yang aktif apabila pada suatu saat terjadi gangguan dalam komunikasi.