Pengertian Mudah Komputasi Paralel Untuk Pemula

Pengertian Mudah Komputasi Paralel Untuk Pemula

Pengertian mudah Komputasi Paralel Terbaru

Pengertian mudah Komputasi Paralel Untuk Pemula 2020,- Komputasi paralel adalah salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer independen secara bersamaan / homegroup.
Ini umumnya diperlukan saat kapasitas yang diperlukan sangat besar, baik karena harus mengolah data dalam jumlah besar (di industri keuangan, bioinformatika, dll) ataupun karena tuntutan proses komputasi yang banyak.

Komputasi Paralel membutuhkan :

  • Algoritma
  • Bahasa Pemograman
  • Compiler
  • Konsep Paralel

Paralel Processing adalah kemampuan menjalankan tugas atau aplikasi lebih dari satu aplikasi dan dijalankan secara simultan atau bersamaan pada sebuah komputer batesmiller.com.

Secara umum, Paralel Processingadalah sebuah teknik dimana sebuah masalah dibagi dalam beberapa masalah kecil untuk mempercepat proses penyelesaian masalah.

Hukum Paralel Processing
  • Hukum Amdahl

    “Peningkatan kecepatan secara paralel akan menjadi linear, melipatgandakan kemampuan proses sebuah komputer dan mengurangi separuh dari waktu proses yang diperlukan untuk menyelesaikan sebuah masalah.”

  • Hukum 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

Di dalam komputasi parallel ada yang dinamakan dengan pemrograman parallel. Pemrograman paralel adalah teknik pemrograman komputer yang memungkinkan eksekusi perintah atau operasi secara bersamaan (komputasi paralel),

baik dalam komputer dengan satu(prosesor tunggal) ataupun banyak (prosesor ganda dengan mesin paralel) CPU.

Bila komputer yang digunakan secara bersamaan tersebut dilakukan oleh komputer-komputer terpisah yang terhubung dalam suatu jaringan komputer lebih sering istilah yang digunakanadalah sistem terdistribusi (distributed computing).

Distributed Processing

Contoh Komputasi Paralel:

Bagan Komputasi  Paralel Terdistribusi

Pada gambar diatas terdapat sebuah masalah, dimana masalah tersebut dibagi menjadi beberapa bagian lalu bagian dari masalah tersebut dibagikan ke-tiga CPU untuk diselesaikan secara bersamaan.

Distributed Processing atau Distributed Computing System adalah sekumpulan peralatan pemrosesan yang saling terhubung melalui jaringan komputer dan saling bekerjasama untuk mengerjakan tugas-tugas tertentu.

Yang dimaksud dengan peralatan pemrosesan dataadalah peralatan komputasi yang dapat mengeksekusi sendiri sebuah program.

Sekumpulan peralatan yang saling terhubung akan mendistribusikan berbagai macam hal, dianataranya adalah:

  • Processing Logic / Pemrosesan secara logis
  • Fungsi. Beberapa fungsi sistem komputer dapat didelegasikan ke beberapa hardware atau software
  • Data
  • Kontrol
Kriteria Distributed Processing
Pemrosesan terdistribusi (Distributed Processing) dapat dikelompokkan berdasarkan beberapa kriteria, yaitu:
  • Degree of Computing / tingkat hubungan : Tinggi atau rendah ? Jumlah data yang saling digunakan dibandingkan dengan jumlah pemrosesan lokal
  • Struktur antar hubungan : kuat atau lemah ? Jika komponen di Share dikatakan kuat ?
  • Kesalingtergantungan komponen-komponen : Kuat atau lemah dalam mengekseskusi proses.
  • Keselarasan antar komponen : selaras atau tidak selaras ?

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.

Tujuan Komputasi Paralel

Tujuan utama penggunaan komputasi paralel adalah untuk mempersingkat waktu eksekusi  program yang menggunakan komputasi serial. Beberapa alasan lain yang menjadikan suatu  program menggunakan komputasi paralel antara lain :

  1. Untuk permasalahan yang besar, terkadang sumber daya komputasi yang ada sekarang belum cukup mampu untuk mendukung penyelesaian terhadap permasalahan tersebut
  2. Adanya sumber daya non-lokal yang dapat digunakan melalui jaringan atau internet
  3. Penghematan biaya pengadaan perangkat keras, dengan menggunakan beberapa mesin yang murah sebagai alternatif penggunaan satu mesin yang bagus tapi mahal, walaupun menggunakan n buah prosesor
  4. Adanya keterbatasan kapasitas memori pada mesin untuk komputasi serial.

Hambatan Komputasi Paralel

Penggunaan komputasi paralel sebagai solusi untuk mempersingkat waktu yang dibutuhkan untuk eksekusi program mempunyai beberapa hambatan. Hambatan-hambatan tersebut antara lain adalah :

  1. Hukum Amdahl : percepatan waktu eksekusi program dengan menggunakan komputasi paralel tidak akan pernah mencapai kesempurnaan karena selalu ada bagian program yang harus dieksekusi secara serial.
  2. Hambatan yang diakibatkan karena beban jaringan : dalam eksekusi program secara paralel, prosesor yang berada di mesin yang berbeda memerlukan pengiriman dan  penerimaan data (atau instruksi) melalui jaringan. Untuk program yang dibagi menjadi task-task yang sering membutuhkan sinkronisasi, network latency menjadi masalah utama. Permasalahan ini muncul karena ketika suatu task membutuhkan data dari task yang lain, state ini dikirimkan melalui jaringan di mana kecepatan transfer data kurang dari kecepatan prosesor yang mengeksekusi instruksi task   Hal ini menyebabkan task tersebut harus menunggu sampai data sampai terlebih dahulu, sebelum mengeksekusi instruksi selanjutnya. Jumlah waktu yang dibutuhkan untuk berkomunikasi melalui jaringan antar dua titik adalah jumlah dari startup time, per-hop time, dan per-word transfer time.
  3. Hambatan yang terkait dengan beban waktu untuk inisiasi task, terminasi task, dan sinkronisasi.

Arsitektur Komputasi Paralel

arsitektur komputer Paralel

Taksonomi Flynn membagi arsitektur komputer paralel dengan menggunakan sudut pandang instruksi dan data, sehingga terdapat empat jenis arsitektur komputer paralel :

  1. SISDSISD (Single Instruction, Single Data) : arsitektur ini adalah arsitektur yang mewakili komputer serial, di mana hanya ada satu prosesor dan satu aliran masukan data (memori) sehingga hanya ada satu task yang dapat dieksekusi pada suatu waktu. Arsitektur von Neumann termasuk dalam jenis ini
  2. SIMDSIMD (Single Instruction, Multiple Data) : pada arsitektur ini, eksekusi sebuah instruksi akan dilakukan secara bersamaan oleh beberapa prosesor, di mana suatu prosesor dapat menggunakan data yang berbeda dengan prosesor lain. Karakteristik lain dari arsitektur ini adalah alur eksekusi instruksi yang deterministik (state dari instruksi dan data pada suatu waktu dapat dengan mudah diketahui). Arsitektur ini cocok untuk program yang dapat dibagi menjadi task-task yang mempunyai derajat keteraturan yang tinggi, misalnya sistem pengolah grafik
  3. Hasil gambar untuk komputasi paralel misdMISD (Multiple Instruction, Single Data) : pada arsitektur ini, berbagai instruksi akan dieksekusi secara bersamaan oleh beberapa prosesor dengan menggunakan data yang sama. Arsitektur ini kurang populer karena hanya sedikit permasalahan yang membutuhkan solusi dengan menggunakan karakteristik arsitektur ini. Contoh permasalahan yang mungkin membutuhkan arsitektur ini antara lain adalah multiple frequency filter dan program pemecah sandi yang menggunakan beberapa algoritma kriptografi sekaligus
  4. MISDMIMD (Multiple Instruction, Multiple Data) : pada arsitektur ini, berbagai instruksi dapat dieksekusi oleh beberapa prosesor di mana masing-masing prosesor dapat menggunakan data yang berbeda. Eksekusi instruksi pada arsitektur ini dapat dilakukan secara sinkron (pada suatu rentang waktu, jumlah instruksi yang dieksekusi oleh semua prosesor adalah sama) maupun asinkron, deterministik maupun non-deterministik. Selain itu, arsitektur ini dapat melakukan pekerjaan sesuai dengan karakteristik dari ketiga asitektur sebelumnya.

Arsitektur Memori pada Komputasi Paralel

Pada umumnya, ada dua buah arsitektur memori pada komputer paralel, yaitu shared memory dan distributed memory

  1. Shared memory
    arsitektur ini menyediakan global addressing sehingga berbagai prosesor mempunyai cara pengaksesan memori yang seragam. Setiap perubahan pada suatu lokasi memori oleh suatu prosesor akan selalu terlihat oleh prosesor lain.
  • ada dua jenis shared memory :Uniform Memory Access (UMA) : setiap prosesor memiliki hak pengaksesan yang seragam dengan prosesor lain
  • Non Uniform Memory Access (NUMA) : tidak semua prosesor memiliki hak yang sama dalam mengakses memori
  1. Distributed memory
    arsitektur ini mempunyai karakteristik di mana setiap prosesor memiliki memorinya masing-masing.
  2. Prosesor akan menggunakan jaringan ketika membutuhkan akses ke memori non lokal. Akses ini sepenuhnya menjadi tanggung jawab  penulis program. Kelebihan dari arsitektur ini adalah terjaganya skalabilitas ketika terjadi  penambahan prosesor. Sedangkan kekurangannya adalah penulis program harus berurusan dengan detail komunikasi data antara prosesor dan memori non lokal.
Comments are closed.