➢ Parallelism
merupakan kesetaraan atau kesesuaian unsur dalam sebuah kalimat. Dalam sebuah
kalimat biasanya memiliki lebih dari satu unsur fungsi kalimat. Hal tersebut
haruslah menggunakan unsur-unsur yang setara dan sesuai agar kalimat dapat
dipahami maksudnya dengan jelas.
➢ Distributed
Processing adalah mengerjakan semua proses pengolahaan data secara Bersama
antara computer pusat dengan beberapa komputer yang lebih kecil dan saling
dihubungkan melalui jalur komunikasi. Setiap computer 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.
➢ Architectural
Parallel Computer :
1. Shared memory : prosesor dapat mengakses semua memori memori
sebagai space alamat global
1.1.
Uniform Memory Access (UMA)
1.2.
Non-Uniform Memory Access(NUMA)
2. Distributed
memory : Prosesor mempunyai memori local sendiri. Inter-Prosesor memory perlu
networking.
3.
Hybrid distributed-shared memory : Menggunakan shared dan
dristributed.
➢ Konsep Dasar
Thread Programming
Konsep
dasar thread adlah unit dasar dari penggunaan CPU, thread mengandung thread ID,
Program counter, register set, dan stack. Sebuah thread berbagi code section,
data section dan sumber daya system operasi dengan thread lain yang dimiliki
oleh proses yang sama. Thread juga sering disebut lightweight
process. Sebuah proses tradisional atau heavyweight process mempunyai thread
tunggal yang berfungsi sebagai pengendali. Perbedaan antara proses dengan
thread tunggal dengan proses dengan thread yang banyak adalah proses dengan
thread yang banyak dapat mengerjakan lebih dari satu tugas pada satu satuan
waktu.
➢ Konsep Dasar
Massage Passing
Message
passing interface (MPI) adalah standar yang digunakan untuk
pemrograman paralel pada distributed
memory (cluster). Program MPI
akan berjalan secara multiprocessing,
tiap proses memiliki memori tersendiri. Instalasi OpenMPI pada Debian/Ubuntu
Linux dilakukan dengan menginstal paket mpi-defaultbin dan mpi-default-dev.
Kompilasi dan eksekusi program menggunakan mpicc dan mpiexec -n <#>
<program>.
➢ OpenMP
OpenMP adalah standar yang digunakan untuk
pemrograman paralel multithreading
pada arsitektur shared memory. Sudah
termasuk pada compiler GCC, sehingga
tidak perlu instalasi tambahan. Programmer cukup menambahkan direktif omp pada
#pragma untuk memparalelkan program. Kompilasi program menggunakan gcc
-fopenmp.
➢ Konsep
Dasar Pemrograman CUDA GPU
GPU ( Graphical Processing Unit ) awalnya adalah sebuah prosesor yang berfungsi khusus untuk melakukan rendering pada kartu grafik saja, tetapi seiring dengan semakin meningkatnya kebutuhan rendering, terutama untuk mendekati waktu proses yang realtime, maka meningkat pula kemampuan prosesor grafik tersebut. akselerasi peningkatan teknologi GPU ini lebih cepat daripada peningkatan teknologi prosesor sesungguhnya ( CPU ), dan pada akhirnya GPU menjadi General Purpose, yang artinya tidak lagi hanya untuk melakukan rendering saja melainkan bisa untuk proses komputasi secara umum. CUDA merupakan teknologi anyar dari produsen kartu grafis Nvidia, dan mungkin belum banyak digunakan orang secara umum. Kartu grafis lebih banyak digunakan untuk menjalankan aplikasi game, namun dengan teknologi CUDA ini kartu grafis dapat digunakan lebih optimal ketika menjalankan sebuah software aplikasi. Fungsi kartu grafis Nvidia digunakan untuk membantu Processor (CPU) dalam melakukan kalkulasi dalam proses data.