PENGANTAR KOMPUTASI MODERN (Komputasi Paralel)

Konsep Paralel

 

Apa itu Komputasi Paralel?

Komputasi Paralel merupakan metode komputasi yang membagi beban komputasi ke dalam beberapa bagian kecil sub proses komputasi, dimana sub komputasi tersebut dijalankan pada prosesor yang berbeda secara bersamaan dan saling berinteraksi satu sama lain dalam menyelesaikan satu permasalahan komputasi.

Komputasi paralel telah dipergunakan selama lebih dari 40 tahun. Gagasan dasar dari pemrosesan paralel adalah memiliki lebih dari satu pemroses yang semuanya memiliki kemampuan untuk bekerja dalam saat yang bersamaan. Penggunaan beberapa pemrosesan ini tentu menyebabkan munculnya persyaratan tambahan, seperti kemampuan penggunaan data bersama-sama dan kemampuan untuk berkomunikasi antar pemroses. Dengan demikian, dapat dipahami bahwa algoritma untuk pemrosesan paralel umumnya lebih kompleks dari algoritma sekuensial.

Komputasi paralel umumnya diterapkan untuk permasalahan yang secara sekuensial tidak mampu diselesaikan dalam jangka waktu "yang pantas", misalnya peramalan cuaca global, dan pemodelan struktur DNA. Untuk meramalkan cuaca pada 10 hari kedepan dengan interval 10 menit, suatu komputer yang beroperasi pada 100 Mflops akan membutuhkan waktu 10⁷, atau lebih dari 100 hari. Sedangkan dengan menggunakan komputer paralel permasalahan ini dapat diselesaikan dalam jangka waktu yang lebih cepat.

Tujuan Komputasi Paralel 

adalah meningkatkan kinerja komputer dalan menyelesaikan berbagai masalah yaitu dengan membagi sebuah masalah besar ke dalam beberapa masalah kecil, membuat kinerja menjadi cepat.

Formula komputasi paralel yang diajukan pada hukum Amdahl

Dimana a adalah banyaknya paralel yang terjadi. Secara teori artinya proses penyelesaian masalah menjadi lebih cepat dengan menggunakan komputasi paralel. Salah satu jenis penggunaan komputasi paralel adalah:

PVM (Paralel Virtual Mechine) 

Distributed Processing

 adalah mengerjakan semua proses pengolahan data secara bersama antara komputer pusat dengan beberapa komputer yang lebih kecil dan saling dihubungkan melalui jalur komunikasi. Setiap komputer tersebut memiliki prosesor mandiri sehingga mampu mengolah sebagian data secara terpisah, kemudian hasil pengolahan tadi digabungkan menjadi satu penyelesaian total. Jika salah satu prosesor mengalami kegagalan atau masalah yang lain akan mengambil alih tugasnya.

Contoh dari Distributed Data Processing System adalah: ATM, komputer yang dirancang untuk tugas-tugas melaksanakan proyek, analisis finansial, penjadwalan waktu dan akuntansi. Contoh lainnya, pengolahan data pada server yahoo yang tersebar hampir di seluruh dunia secara distribusi, setiap wilayah mempunyai server masing-masing. Seperti di indonesia mempunyai server tersendiri sehingga pengolahan data tidak di pusat melainkan di wilayah masing-masing, dll.

  >>SISD (Single Instruction Single Data)

Komputer ini memiliki hanya satu prosesor dan satu instruksi yang dieksekusi secara serial. Komputer ini adalah tipe komputer konvensional. Menurut mereka tipe komputer ini tidak ada dalam praktik komputer paralel karena bahkan mainframe pun tidak lagi menggunakan satu prosesor. Klasifikasi ini sekedar untuk melengkapi definisi komputer paralel. Beberapa contoh komputer yang menggunakan model SISD adalah UNIVAC1, IBM 360, CDC 7600, Cray 1 dan PDP 1.

 >>SIMD (Single Instruction Multiple Data)


Komputer ini memiliki lebih dari satu prosesor, tetapi hanya mengeksekusi satu instruksi secara paralel pada data yang berbeda pada level lock-step. Komputer vektor adalah salah satu komputer paralel yang menggunakan arsitektur ini. 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 (Multiple Instruction Multiple Data)

 Multiple Instructions – Single Data. Teorinya komputer ini memiliki satu prosesor dan mengeksekusi beberapa instruksi secara paralel tetapi praktiknya tidak ada komputer yang dibangun dengan arsitektur ini karena sistemnya tidak mudah dipahami. Sampai saat ini belum ada komputer yang menggunakan model MISD.

>> MIMD ( Multiple Instruction Multiple Data)

Multiple Instructions – Multiple Data. Komputer ini memiliki lebih dari satu prosesor dan mengeksekusi lebih dari satu instruksi secara paralel. Tipe komputer ini yang paling banyak digunakan untuk membangun komputer paralel, bahkan banyak supercomputer yang menerapkan arsitektur ini. Beberapa komputer yang menggunakan model MIMD adalah IBM POWER5, HP/Compaq AlphaServer, Intel IA32, AMD Opteron, Cray XT3 dan IBM BG/L. 

Komponen-komponen utama dari arsitektur komputer paralel cluster PC antara lain:

  1. Prosesor (CPU). Bagian paling penting dalam sistem, untuk multicore terdapat lebih dari satu core yang mengakses sebuah memori (shared memory).
  2. Memori. Bagian ini dapat diperinci lagi menjadi beberapa bagian penyusunnya seperti RAM, cache memory dan memori eksternal.
  3. Sistem Operasi. Software dasar untuk menjalankan sistem komputer.
  4. Cluster Middleware. Antarmuka antara hardware dan software.
  5. Programming Environment dan Software Tools. Software yang digunakan untuk pemrograman paralel termasuk software pendukungnya.
  6. User Interface. Software yang menjadi perantara hardware dengan user.
  7. Aplikasi. Software berisi program permasalahan yang akan diselesaikan.
  8. Jaringan. Penghubung satu PC (prosesor) dengan PC yang lain sehingga memungkinkan pemanfaatan sumberdaya secara simultan.
Paralel Processing
adalah kemampuan menjalankan tugas atau aplikasi lebih dari satu aplikasi dan dijalankan secara simultan atau bersamaan pada sebuah komputer. Secara umum, ini adalah sebuah teknik dimana sebuah masalah dibagi dalam beberapa masalah kecil untuk mempercepat proses penyelesaian masalah.

Terdapat 2 hukum yang berlaku dalam sebuah paralel processing, yaitu:
>>Hukum Amdahl
     Menurut Amdahl "Peningkatan kecepatan secara paralel akan menjadi linear, melipat gandakan kemampuan proses sebuah komputer dan mengurangi separuh dari waktu proses yang diperlukan untuk menyelesaikan sebuah masalah".

>>Hukum Gustafson
     Pendapat yang dikemukakan oleh Gustafson hampir sama dengan Amdahl, tetapi dalam pemikiran Gustafson sebuah komputasi paralel berjalan dengan menggunakan dua atau lebih mesin untuk mempercepat penyelesaian masalah dengan memperhatikan faktor eksternal, seperti kemampuan mesin dan kecepatan proses tiap-tiap mesin yang digunakan.


 Gambar diatas merupakan contoh dari sebuah komputasi paralel, dimana pada gambar diatas terdapat sebuah masalah, dari masalah tersebut dibagi lagi menjadi beberapa bagian agar sebuah masalah dapat dengan cepat diatasi.

Salah satu jenis penggunaan komputasi paralel adalah:
PVM (Paralel Virtual Mechine)
Merupakan sebuah perangkat lunak yang mampu mensimulasikan pemrosesan paralel pada jaringan.

Model Komputasi Pararel.
 >> Embarasingly Parallel adalah pemrograman paralel yang digunakan pada masalah-masalah yang bisa diparalelkan tanpa membutuhkan komunikasi satu sama lain. Sebenarnya pemrograman ini bisa dibilang sebagai pemrograman paralel yang ideal karena tanpa biaya komunikasi, lebih banyak peningkatan kecepatan yang bisa dicapai.

Referensi:

1. http://www.komputasi.lipi.go.id/data/1014224400/data/1123986635.pdf
2. https://pandanwulan.wordpress.com/2015/06/28/konsep-distribusi-processing-arsitektur-komputer-paralel-thread-programming-message-passing-atau-openmp-dan-pemrograman-cuda-pada-gpu/
3. https://andri102.wordpress.com/game/soft-skill/konsep-komputasi-parallel-processing/

Komentar

Postingan populer dari blog ini

Arduino Mobil RC Bluetooth

Strata Sosial

Pengantar Komputasi Modern # (15 Soal dengan Jawaban)