Senin, 27 Juni 2016

Tugas PKM ke - 4 "Parallel Computation"

Disusun Oleh :
  • Ayu Pramesywary (51412290)
  • Dhea Pattah (51412985)
  • Faqih Khoerurrizal Mansur (52412753)
  • Muhammad Yogi (58412239)
Kelas  : 4IA23
Dosen : Dr. RINA NOVIANA, SKom., MMSI.

1.      Komputasi Paralel
Teknologi komputasi paralel sudah berkembang lebih dasri dua dekade, penggunaannya semakin beragam mulai dari kebutuhan perhitungan di laboratorium fisika nuklir, simulasi pesawat luar angkasa, hingga perkiraan cuaca.
Komputasi Paralel didefinisikan sebagai penggunaan sekumpulan sumberdaya komputer secara simultan untuk menyelesaikan permasalah komputasi. Secara prinsip komputer paralel membagi permasalahan sehingga menjadi lebih kecil untuk dikerjakan oleh setiap prosesor (CPU) dalam waktu yang bersamaan atau simultan (conccurent).

2.      Parallelism Concept
Paralelisme (parallelism) lahir dari pendekatan yang biasa dipergunakan oleh para perancang sistem untuk menerapkan konsep pemrosesan konkuren. Teknik ini meningkatkan kecepatan proses dengan cara memperbanyak jumlah modul perangkat keras yang dapat beroperasi secara simultan disertai dengan membentuk beberapa proses yang bekerja secara simultan pada modul-modul perangkat keras tersebut.
Untuk meningkatkan kecepatan proses komputasi, dapat ditempuh dua cara :
·         Peningkatan kecepatan perangkat keras
Komponen utama perangkat keras komputer adalah processor.
·         Peningkatan kecepatan perangkat lunak
Program komputer untuk komputer sekuensial harus menyediakan sederetan operasi untuk dikerjakan oleh prosesor tunggal.
Tingkat Paralelisme
Berdasarkan tingkat paralelismenya prosesor paralel dapat dibagi menjadi beberapa tingkat sebagai berikut :
    a.   Komputer Array (Prosesor Array, Prosesor Vektor)
    b.  Multiprosesor, yaitu sebuah sistem yang memiliki 2 prosesor atau lebih yang saling berbagi memori.
    c.  Multikomputer, yaitu sebuah sistem yang memiliki 2 prosesor atau lebih yang masing-masing prosesor memiliki memori sendiri.

3.      Distributed Processing
Pemrosesan paralel adalah pendekatan komputasi untuk meningkatkan tingkat di mana satu set data diolah dengan pengolahan bagian yang berbeda dari data pada waktu yang sama secara simultan atau bersamaan pada sebuah komputer dan berfungsi memecah beban besar menjadi beberapa beban kecil untuk mempercepat proses penyelesaian masalah. 
Didistribusikan 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.
Parallel distributed computing dapat dibentuk dari :
o   Ada, digunakan konsep pertemuan yang menggabungkan fitur RPC dan monitor.
o   PVM (Parallel Virtual Machine) untuk mendukung workstation clusters.

o   MPI (Message-Passing Interface) programming GUI untuk parallel computers.
Gambar Distributed Processing

4.      Architectural Parallel Computer
Berdasarkan jumlah dan prinsip kerja prosesor pada komputer paralel, A.J. Van der Steen dan J. Donggara menyebutkan terdapat empat arsitektur utama komputer paralel menurut Flynn (1972) yaitu :
a.       SISD (Single Instruction – Single Data).
Komputer ini memiliki hanya satu prosesor dan satu instruksi yang dieksekusi secara serial.
Gambar SISD

b.      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.
Gambar SIMD

c.      MISD (Multiple Instructions – Single Data)
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.
Gambar MISD

d.      MIMD (Multiple Instructions – Multiple Data)
Komputer ini memiliki lebih dari satu prosesor dan mengeksekusi lebih dari satu instruksi secara paralel. Tipe komputer ini paling banyak digunakan untuk membangun komputer paralel, bahkan banyak supercomputer yang menerapkan arsitektur ini.
Gambar MIMD

5.      Implementasi Parallel Computation
Untuk implementasi pada komputasi paralel ini, kita mengambil contoh implementasi komputasi paralel pada dunia bisnis khususnya perfilm-an.
Kemajuan di bidang komputasi, khususnya dalam bidang komputer grafis memberikan kemudahan untuk memodelkan suatu benda dalam alam 3 dimensi virtual di komputer. Kita dapat membuat suatu benda dalam wujud 3 dimensi dan mengubah-ubah sudut pandang, menentukan pencahayaan, bahkan menyusun gerakan benda dalam alam 3 dimensi virtual tersebut. Perkembangan ini muncul dari kebutuhan di bidang manufaktur untuk memiliki komputer yang dapat membantu perancangan (computer aided design-CAD). Ditemukannya teknik-teknik dan metoda rendering suatu obyek 3 D ke dalam media 2 D membuat benda yang dihasilkan oleh perangkat lunak ini menjadi semakin nyata dan menyerupai aslinya.
Pada bagian ini yaitu pada rendering Film digunakan unit Komputasi paralel Distributed Memory Multicomputer, hal ini dikarenakan komputer yang digunakan untuk membuat rendering filmnya adalah Kluster Komputer. Komponen kluster biasanya saling terhubung dengan cepat melalui sebuah interkoneksi yang sangat capat, atau juga melalui jaringan local (LAN).
3D Rendering merupakan salah satu proses yang sangat penting dalam melakukan pengolahan gambar 3D, proses render membutuhkan daya komputasi yang sangat besar karena banyaknya titik koordinat yang harus dikomputasi, terutama jika data 3D yang diolah cukup rumit. Salah satu cara untuk memecahkan masalah tersebut adalah dengan menggunakan algoritma Divide and Conquer yang diterapkan kedalam metode Komputasi Paralel, Divide and Conquer merupakan salah satu strategi algoritma yang memecah suatu masalah besar menjadi beberapa bagian untuk kemudian dikerjakan satu persatu. Dalam Komputasi Parallel tiap-tiap bagian dikerjakan oleh unit pemrosesannya masing-masing, sesuai dengan kesepakatan Divide pada awal komputasi. Komputasi Paralel terbukti jauh lebih efektif untuk melakukan rendering objek 3D dibanding hanya menggunakan sebuah unit komputasi. Sebagai contoh suatu perusahaan animasi asal Jepang, membutuhkan waktu 165 tahun jika proses render yang dilakukan untuk membuat animasi berdurasi 100 menit hanya menggunakan sebuah unit komputasi. Sedangkan ketika perusahaan tersebut menggunakan metode Komputasi Paralel, proses tersebut hanya membutuhkan waktu 1 tahun saja.
Selain itu, perfilman yang mengandalkan spesial efek merupakan salah satu industri yang paling banyak mengandalkan HPC Cluster, rangkaian film The Lord of the Ring yang akan diputar pada pertengahan Desember ini merupakan salah satu film yang paling banyak mengandalkan digital content creation (DCC) dan menuntut kapasitas pemrosesan yang besar untuk rendering gambar- gambar beresolusi tinggi dalam berbagai format. Jika sekuel Lord of The Ring dikerjakan dengan personal komputer (PC) yang tercepat saat ini, dibutuhkan waktu lebih dari 10 tahun untuk menyelesaikan proses rendering. Bagi para artis grafis 3D atau animator, hal yang paling menyita waktu adalah menunggu proses rendering.
Proses pemberian ketebalan yang paling sederhana contohnya jika kita membuat suatu logo atau teks dalam 2D, misalkan logo perusahaan, dan kita menginginkan memberikan ketebalan tertentu, maka dengan program Lofter cukup kita load objek 2D tersebut dan kita beri path garis lurus sepanjang ketebalan yang diinginkan dalam vektor arah ketebalan, lalu kita lakukan proses loftering, maka jadilah objek 3D yang kita inginkan.
Melakukan 3D Rendering tentu akan merupakan masalah yang sangat merepotkan jika tidak menggunakan algoritma memadai, dikarenakan banyaknya point dan polygon yang harus dikalkulasi setiap proses. Penggunaan algoritma Divide and Conquer tentu sangat membantu agar pekerjaan penghitungan yang sangat banyak dalam proses render dapat dikerjakan oleh beberapa unit komputasi sekaligus secara bersamaan. Hal ini juga telah dibuktikan dengan banyaknya perusahaan animasi dan film yang sering melakukan pekerjaan proses render menggunaan sistem komputasi paralel di dalam perusahaan mereka.

Source :