Sunday, April 24, 2016

PARALLEL PROCESSING DAN HUBUNGANNYA DENGAN KOMPUTASI MODERN

Parallel Processing

Parallel processing adalah salah satu teknik melakukan beberapa proses secara bersamaan. Hal ini dapat dilihat dalam 2 konteks,yaitu proses yang terjadi pada manusia yaitu penggunaan otak yang memproses rangsangan secara bersamaan dan konteks pada komputasi parallel pada mesin. Komputasi parallel merupakan bentuk komputasi dimana banyak proses yang dilakukan secara bersamaan dengan memanfaatkan beberapa komputer secara bersamaan.

Biasanya diperlukan saat kapasitas yang iperlukan 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.
Hampir seluruh perusahaan besar pasti menggunakan parallel processing ini, terutama perusahaan yang membutuhkan kinerja prosesor yang cepat dan besar.

Hubungan Antara Komputasi Modern dengan Paralel Processing

Kinerja komputasi dengan menggunakan paralel processing itu menggunakan dan memanfaatkan beberapa komputer atau CPU untuk menemukan suatu pemecahan masalah dari masalah yang ada. Sehingga dapat diselesaikan dengan cepat daripada menggunakan satu komputer saja. Komputasi dengan 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 yang besar saja, komputasi yang masalah kecil, lebih murah menggunakan satu CPU saja.

Perusahaan yang Menggunakan Parallel Processing dan Komputasi Modern

Mari kita bahas lagi sedikit mengenao komputasi modern. Masih ingatkan jenis-jenis dari komputasi modern? Silahkan “Baca” pada artikel yang pernah saya tulis sebelumnya. Saya pernah menuliskan contoh” implementasi pada cloud computing”. Kali ini, saya akan mengambil pengimplementasian dari Grid Computing. Kenapa Grid computing? Komputasi grid atau grid computing adalah penggunaan sumber daya komputer secara bersama-sama dimana komputer tersebut terpisah secara geografis. Komputasi grid ini biasanya digunakan untuk memecahkan suatu permasalahan berskala besar.

Grid Computing Memiliki Persamaan dengan Parallel Processing

Salah satu perusahaan yang menggunakan grid computing adalah aplikasi yang dibuat oleh perusahaan Oracle. Beberapa aplikasi yang telah menggunakan system grid computing antara lain adalah PipeLine (untuk mendeteksi kerusakan pipa), NeuroGrid, Molecular Docking,  ABCGrid(Application of Bioinformatics Computing Grid), Oracle 10g, dll.  Namun dalam tulisan kali ini akan dibahas mengenai software Oracle 10g dan apa hubungannya dengan grid computing. Oracleversi baru ini diberi nama Oracle 10g dan digunakan huruf  “g” pada nama versinya. Penggunaan huruf “g”  padaOracle 10g  berasal dari singkatan grid.

Versi baru dari Oracle ini akan lebih mempermudah perusahaan dalam membangun system komputasi grid diluar kerangka kerja komputasi  akademik, teknik, riset, dan saintifik.Seperti yang telah kita ketahui bahwa Oracle 10g itu terdiri dari OracleDatabase 10g,  Oracle Application 10g, dan Oracle Enterprise Manager 10g. Penggunaan teknik grid pada ketiga produk oracle tersebut biasa diimplementasikan dengan virtualisasi dan provisioning.

Kinerja Komputasi dengan Parallel Processing

Pada artikel sebelumnya kita telah memahami apa itu komputasi modern. Kali ini saya akan mengulas lebih lanjut mengenai kinerja komputasi tersebut dengan parallel processing. Terlebih dahulu kita mengerti konsep dari pemrosesan paralel (parallel processing), yaitu penggunaan lebih dari satu CPU untuk menjalankan sebuah program secara simultan. Idealnya, parallel processing membuat program berjalan lebih cepat karena semakin banyak CPU yang digunakan.

Sedangkan komputasi paralel adalah salah satu teknik untuk melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer secara bersamaan. Biasanya diperlukan saat kapasitas yang diperlukan 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 aneka perangkat lunak pendukung yang biasa disebut sebagai middleware yang berperan untuk mengatur distribusi pekerjaan antar node dalam satu mesin paralel. Selanjutnya pemakai harus membuat pemrograman paralel untuk merealisasikan komputasi.

Komputasi Paralel merupakan salah satu teknologi paling menarik sejak ditemukannya komputer pada tahun 1940-an. Terobosan dalam pemorosesan parallel selalu berkembang dan mendapatkan tempat disamping teknologi-teknologi lainnya sejak Era Kebangkitan (1950-an), Era Mainframe (1960-an), Era Minis (1970-an), Era PC (1980-an), dan Era Komputer Paralel (1990-an). Dengan berbagai pengaruh atas perkembangan teknologi lainnya, dan bagaimana teknologi ini mengubah persepsi terhadap komputer, dapat dimengerti betapa pentingnya komputasi parallel itu.

Inti dari komputasi parallel yaitu hardware, software, dan aplikasinya. Paralel prosesing merupakan suatu pemrosesan informasi yang lebih mendekatkan pada manipulasi rata-rata dari elemen data terhadap satu atau lebih penyelesaian proses dari sebuah masalah. Dengan kata lain komputasi parallel adalah komputer dengan banyak processor dapat melakukan parallel processing dengan cara membagi-bagi proses ke source-source yang dimiliki.

Paradigma pemrosesan parallel bergantung pada model SIMD (single instruction multiple data), dan paradigma functional dataflow yang memperkenalkan konsep model MIMD (Multiple Instrution Multiple Data). Suatu program parallel memerlukan koordinasi ketika sebuah tugas bergantung pada tugas lainnya. Ada dua macam bentuk koordinasi pada komputer parallel : asynchronous dan synchronous. Bentuk synchronous merupakan koordinasi pada hardware yang memaksa semua tugas agar dilaksanakan pada waktu yang bersamaan dengan mengesampingkan adanya ketergantungan tugas yang satu dengan yang lainnya. Sementara bentuk asynchronous mengandalkan mekanisme pengunci untuk mengkoordinasikan processor tanpa harus berjalan bersamaan.

Sumber :

http://imamnotes.webs.com/apps/blog/show/3792057-grid-computing