Search This Blog

Saturday, June 30, 2018

Tugas Softskill 4

A.Komputasi Pararel

Komputasi paralel adalah salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer independen secara bersamaan. 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. Kasus kedua umum ditemui di kalkulasi numerik untuk menyelesaikan persamaan matematis di bidang fisika (fisika komputasi), kimia (kimia komputasi) dll.

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. Tidak berarti dengan mesin paralel semua program yang dijalankan diatasnya otomatis akan diolah secara parallel.

Contoh : Komputer SISD

 

B.Parallelism Consept

Ada dua bentuk umum paralelisme: paralelisme instruksi-level dan paralelisme prosesor-level. Pada bentuk pertama, paralelisme dimanfaatkan dalam instruksi-instriuksi individu agar dapat mngeksekusi lebih banyak instruksi per detikdari mesin tersebut. Pada betuk kedua, berbagai macam CPU bersama-sama menangani masalah yang sama. Setiap pendekatan memiliki keunggulannya masing-masing.
Contoh : Multikomputer dan Multiprosessor

 

C. Distributed Processing

Adalah kemampuan menjalankan semua proses pengolahan data secara bersama antara komputer yang berfungsi sebagai 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 maka prosesor yang lain akan mengambil alih tugasnya. Dalam proses distribusi sudah mutlak diperlukan perpaduan yang mendalam antara teknologi komputer dan telekomunikasi, karena selain proses yang harus didistribusikan, semua host komputer wajib melayani terminal-terminalnya dalam satu perintah dari komputer pusat

Contoh : Jaringan Client server

 

D.Architectur Parallel Computer

Arsitektur Komputer Paralel Beserta Jenis Arsitekturnya

Komputasi paralel adalah salah satu teknik 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.

Contoh : Taksonomi Flyn yaitu SISD,SIMD,MISD,MIMD

 

E.Pengantar Thread Programming

Threading / Thread adalah sebuah alur kontrol dari sebuah proses. Konsep threading adalah menjalankan 2 proses ( proses yang sama atau proses yang berbeda ) dalam satu waktu. Contohnya sebuah web browser mempunyai thread untuk menampilkan gambar atau tulisan sedangkan thread yang lain berfungsi sebagai penerima data dari network. Threading dibagi menjadi 2 :

1.Static Threading

Teknik ini biasa digunakan untuk komputer dengan chip multiprocessors dan jenis komputer shared-memory lainnya. Teknik ini memungkinkan thread berbagi memori yang tersedia, menggunakan program counter dan mengeksekusi program secara independen. Sistem operasi menempatkan satu thread pada prosesor dan menukarnya dengan thread lain yang hendak menggunakan prosesor itu.

2.Dynamic Multithreading

Teknik ini merupakan pengembangan dari teknik sebelumnya yang bertujuan untuk kemudahan karena dengannya programmer tidak harus pusing dengan protokol komunikasi, load balancing, dan kerumitan lain yang ada pada static threading. Concurrency platform ini menyediakan scheduler yang melakukan load balacing secara otomatis. Walaupun platformnya masih dalam pengembangan namun secara umum mendukung dua fitur : nested parallelism dan parallel loops.

Contoh : Java

 

F. Pengantar Massage Passing dan OpenMP

Message Passing merupakan sebuah bentuk dari komunikasi yang digunakan di komputasi paralel, OOT (Object Oriented Programming) atau Pemrograman Berbasis Objek dan komunikasi interproses. Massage Passing merupkan suatu teknik bagaimana mengatur suatu alur komunikasi messaging terhadap proses pada system. Message passing dalam ilmu komputer adalah suatu bentuk komunikasi yang digunakan dalam komputasi paralel , pemrograman-berorientasi objek , dan komunikasi interprocess. Objek didistribusikan dan metode sistem remote doa seperti ONC RPC , CORBA , Java RMI , DCOM , SOAP , . NET Remoting , CTO , QNX Neutrino RTOS , OpenBinder , D-Bus , Unison RTOS dan serupa pesan lewat sistem.

Paradigma Message passing yaitu :

1. Banyak contoh dari paradigma sekuensial dipertimbangkan bersama-sama.

2. Programmer membayangkan beberapa prosesor, masing-masing dengan memori, dan menulis sebuah program untuk berjalan pada setiap prosesor.

3. Proses berkomunikasi dengan mengirimkan pesan satu sama lain

MPI adalah sebuah standard pemrograman yang memungkinkan pemrogram untuk membuatsebuah aplikasi yang dapat dijalankan secara paralel. Proses yang dijalankan oleh sebuah aplikasi dapat dibagi untuk dikirimkan ke masingmasing compute node yang kemudian masingmasing compute node tersebut mengolah dan mengembalikan hasilnya ke komputer head node.Untuk merancang aplikasi paralel tentu membutuhkan banyak pertimbangan - pertimbangandiantaranya adalah latensi dari jaringan dan lama sebuah tugas dieksekusi oleh prosesor.

OpenMP merupakan API yang mendukung multi-platform berbagi memori multiprocessing pemrograman C , C + + , dan Fortran , pada kebanyakan arsitektur prosesor dan system operasi , termasuk Solaris , AIX , HP-UX , GNU / Linux , Mac OS X , dan Windows platform. Ini terdiri dari satu set perintah kompiler, rutinitas library, dan variable lingkungan yang mempengaruhi perilaku run-time. OpenMP dikelola oleh nirlaba teknologi konsorsium OpenMP Arsitektur Review Board (ARB atau OpenMP), bersama-sama didefinisikan oleh sekelompok perangkat keras komputer utama dan vendor perangkat lunak, termasuk AMD , IBM , Intel , Cray , HP , Fujitsu , Nvidia , NEC , Microsoft , Texas Instruments , Oracle Corporation , dan banyak lagi.

Contoh : C++ , C , dan Fotran.

 

G. PEMROGRAMAN CUDA GPU

Graphics Processing Unit merupakan prosesor yang didedikasikan untuk render cepat dalam pemrosesan polygon baik itu texturing dan shading. Terdiri atas banyak core namun masih menggunakan arsitektur yang sederhana, sehingga harganya relative murah dan di produksi secara missal untuk berbagai keperluan misalnya peneilitian/ilmuah.

CUDA, Compute Unified Device Architecture merupakan suatu framework dari bahasa pemrograman yang mendukung bahas C language, dimana mampu berkomunikasi langsung dengan GPU dan sangat mudah bekerjasama untuk segala multi-threading  parallel execution hampir diseluruh prosesor pada GPU. CUDA menggukan konsep nvcc sebagai ORM dalam object programmingnya. CUDA merupakan produk dari NVIDIA sebagai produsen graphic komputer ternama.

Bukan hanya aplikasi seperti teknologi ilmu pengetahuan yang spesifik. CUDA sekarang bisa dimanfaatkan untuk aplikasi multimedia. Misalnya meng-edit film dan melakukan filter gambar. Sebagai contoh dengan aplikasi multimedia, sudah mengunakan teknologi CUDA. Software TMPGenc 4.0 misalnya membuat aplikasi editing dengan mengambil sebagian proces dari GPU dan CPU. VGA yang dapat memanfaatkan CUDA hanya versi 8000 atau lebih tinggi.

Contoh : Visual Studio

 

Sumber:

1. http://akhmadilman46.blogspot.com/2013/05/komputasi-paralel.html
2.
http://zulfadli-0635.blogspot.com/2009/01/proses-paralel-dalam-sistim-komputer.html
3.
http://arifbudimanhsb.blogspot.com/2016/06/distributed-processing-adalah.html
4.
https://pandanwulan.wordpress.com/2015/06/28/konsep-distribusi-processing-arsitektur-komputer-paralel-thread-programming-message-passing-atau-openmp-dan-pemrograman-cuda-pada-gpu/
5.
http://maladawatunnajah.blogspot.com/2015/11/pengantar-thread-programming.html
6.
https://muhammad-ridho94.blogspot.com/2016/06/message-passing-dan-openmp.html
7.
https://syifaadeka.wordpress.com/2016/06/18/pemrograman-cuda-gpu/

No comments:

Post a Comment