Paralel Computation
Nama Kelompok : 1.
Aji Imam Sampurno [50412518]
2. Diah
Nurfatimah [52412016]
3. Marihot
Kaisar Nabuo [54412439]
4. Yohanes
William Silalahi [57412850]
Kelas : 4IA24
Matkul : Pengantar Komputasi Modern#
Dosen : Dr.
Rina Noviana, Skom. MMSI
A. Parallelism
Concept
Komputasi paralel adalah
salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan
beberapa komputer independen secara bersamaan. Biasanya padasaat kapasitas yang
diperlukan sangat besar, baik karena pengolahan data dalam jumlah besar
(di industri keuangan, bioinformatika, dll) ataupun karena proses komputasi
yang banyak. Salah satu jenis penggunaan komputasi paralel adalah PVM
(Parallel Virtual Machine), yaitu sebuah perangkat lunak yang mampu
mensimulasikan pemrosesan paralel pada jaringan. Tujuan dari komputasi paralel
ini adalah meningkatkan kinerja komputer dalam menyelesaikan berbagai masalah.
Dengan membagi sebuah masalah besar ke dalam beberapa masalah kecil, membuat
kinerja menjadi cepat.
Sekalipun didukung oleh
teknologi prosesor yang berkembang sangat pesat, komputer sekuensial tetap akan
mengalami keterbatasan dalam hal kecepatan pemrosesannya. Hal ini menyebabkan
lahirnya konsep keparalelan (parallelism) untuk menangani masalah dan aplikasi
yang membutuhkan kecepatan pemrosesan yang sangat tinggi, seperti misalnya
prakiraan cuaca, simulasi pada reaksi kimia, perhitungan aerodinamika dan
lain-lain.
Konsep keparalelan itu sendiri
dapat ditinjau dari aspek design mesin paralel, perkembangan bahasa pemrograman
paralel atau dari aspek pembangunan dan analisis algoritma paralel. Algoritma
paralel itu sendiri lebih banyak difokuskan kepada algoritma untuk
menyelesaikan masalah numerik, karena masalah numerik merupakan salah satu
masalah yang memerlukan kecepatan komputasi yang sangat tinggi. misalnya dalam
kalkulasi numerik untuk menyelesaikan persamaan matematis di bidang fisika
(fisika komputasi), kimia (kimia komputasi) dll.
B. Distributed
Processing
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. Maka diperlukan perangkat
lunak pendukung yang disebut middleware yang berperan untuk mengatur distribusi
pekerjaan antar node dalam satu mesin paralel.
Distribusi pengolahan
paralel menggunakan pemrosesan paralel pada beberapa mesin. Salah satu contoh
dari hal ini adalah bagaimana beberapa komunitas memungkinkan pengguna untuk
mendaftar dan mendedikasikan komputer mereka sendiri untuk memproses beberapa
data set yang diberikan kepada mereka oleh server. Ketika ribuan pengguna
mendaftar untuk ini, banyak data dapat diproses dalam jumlah yang sangat
singkat.
Tipe lain dari komputasi
paralel yang kadang-kadang disebut "didistribusikan" adalah gagasan
dari sebuah komputer paralel cluster. Sebuah cluster akan banyak CPU terhubung
melalui kecepatan tinggi koneksi ethernet ke hub sentral (Server) yang memberi
masing-masing beberapa pekerjaan yang harus dilakukan. Metode cluster mirip
dengan metode yang dijelaskan dalam paragraf di atas, kecuali bahwa semua CPU
secara langsung terhubung ke server, dan satu-satunya tujuan mereka adalah
untuk melakukan perhitungan yang diberikan kepada mereka. Parallel
distributed computing dapat dibentuk dari :
l Ada : Digunakan konsep
pertemuan yang menggabungkan fitur RPC dan monitor.
l PVM (Parallel Virtual Machine) untuk mendukung workstation clusters.
l MPI (Message-Passing Interface) programming GUI untuk parallel
computers.
C. Architectural
Parallel Computer
Arsitektur paralel
komputer menurut Klasifikasi Flynn’s :
1.
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.
2.
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).
3.
MISD
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.
4.
MIMD
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.
D. Implementasi
Parallel Computation
Contoh Implementasi pada sebuah perusahaan yaitu :
Pada bagian ini penulis akan membahas salah satu implementasi
komputasi parallel yang ada pada
dunia bisnis yaitu didunia perfilman berupa rendering sebuah film. Kemajuan di
bidang komputasi, khususnya dalam bidang komputer grafis memberikan kemudahan
untuk memodelkan suatu benda dalam alam dua dimensi virtual di komputer.
Seperti pada salah satu perusahaan ini yaitu WETA Digital, sebuah perusahaan animasi dan spesial efek yang bermarkas di selandia baru dalam membangun fasilitas
render farm berbasis cluster hingga skalabilitas
ribuan prosesor untuk mengerjakan sebuah film.
Jika
sekuel suatu film dikerjakan dengan Personal Computer (PC) yang tercepat saat
ini, maka dibutuhkan sekali waktu lebih dari 4 tahun untuk menyelesaikan suatu
proses rendering terhadap pembuatan film. Oleh karena itu dibutuhkan konsep
komputasi paralel, karena komputasi paralel mempunyai prinsip yang bersesuaian
dengan algoritma divide and conquer yaitu membagi proses menjadi bagian-bagian
yang cukup kecil sehingga memungkinkan untuk dapat dikerjakan oleh sebuah unit
komputasi.
Proses
rendering film menggunakan unit komputasi parallel distributed memory
multicomputer. Dikarenakan komputer digunakan untuk membuat rendering filmnya
yaitu kluster komputer. Kluster komputer adalah proses menghubungkan beberapa
komputer agar dapat bekerja secara bersama - sama dengan sebuah jaringan
sebagai media penghubungannya. Sehingga pemrosesan dapat dilakukan lebih cepat
karena mempunyai mesin-mesin yang masing-masing multiprocessor. Salah satu
proses yang sangat penting dalam melakukan pengolahan gambar 3D yaitu dengan 3D
rendering. Tanpa dirender suatu gambar yang diolah oleh perangkat lunak animasi
3D hanya akan tampil dalam bentuk kumpulan point dan wireframe sederhana saja.
Proses
render dilakukan dalam proses pembungkusan tekstur pada objek yang bersesuaian
dengan cahaya yang datang pada objek tersebut. Namun proses render membutuhkan
daya komputasi yang sangat besar karena banyaknya titik koordinat yang harus
dikomputasikan, terutama jika data 3D yang diolah cukup rumit. Model 3D
rendering yang dihasilkan berupa data geometri, titik pandang, tekstur dan
cahaya yang diperlukan untuk membuat gambar yang utuh. Dan salah satu cara
untuk memecahkan masalah tersebut adalah dengan menggunakan algoritma divide
dan conquer yang diterapkan ke dalam metode komputasi parallel. Karena komputasi parallel terbukti jauh lebih efektif untuk melakukan rendering
objek 3D dibanding
hanya dengan menggunakan
sebuah unit komputasi.
Jadi,
kesimpulan dari pembahasan materi komputasi pararel ini adalah bahwa perkembangan pada arsitektur komputer membutuhkan
suatu konsep pemrosesan paralel. Dimana pemrosesan paralel
mampu menjalankan tugas atau aplikasi lebih dari satu aplikasi yang dijalankan secara
simultan atau bersamaan pada sebuah komputer, sehingga saling terjadi tumpang tindih dan komputer dapat mengalami
keterbatasan dalam hal kecepatan pemrosesan. Oleh karena itu sehingga menyebabkan lahirnya konsep keparalelan (parallelism) untuk menangani
masalah dan aplikasi yang membutuhkan kecepatan pemrosesan yang sangat tinggi,
seperti misalnya prakiraan cuaca, simulasi pada reaksi kimia, perhitungan
aerodinamika dan lain-lain. Metode
divide dan conquer juga sangat berperan penting dalam penyelesaian proses
rendering pada suatu perusahaan perfilman.
Referensi :
http://ewindarwin10.blogspot.co.id/2013/06/parallel-computation-parallelism.html
https://andri102.wordpress.com/game/soft-skill/konsep-komputasi-parallel-processing/
https://andri102.wordpress.com/game/soft-skill/konsep-komputasi-parallel-processing/

