Pada postingan kali ini, dipaparkan tentang pengenalan komputer paralel (pengertian, manfaat, jenis-jenis, dll). Semoga dapat bermanfaat…
1.1 Kebutuhan akan Kecepatan Komputasi
Beberapa alasan para peneliti dan ilmuwan membutuhkan Komputer Paralel :
- Menghitung Operasi Numerik masalah2 ilmiah dan teknik.
- MemperSINGKAT waktu pengolahan data2 Numerik repetitive untuk memperoleh hasil yang valid.
- Komputer Tunggal saat ini memerlukan waktu yang lama untuk menyelesaikan masalah2 ilmiah dan teknik secara numeric.
Contoh masalah-masalah yang membutuhkan Komputer Paralel dengan tenggat waktu yang SINGKAT :
- Peramalan Cuaca
- Biologi : Pemodelan DNA, Pemodelan system Biologi pada Level Molekul.
- Peramalan Gerak benda Astronomis di Ruang angkasa,
- Web Server yang Harus melayani Ribuan REQUEST per jam dari beberapa Client/User.
Pemrograman Paralel : Suatu Program dibagi menjadi beberapa bagian yang selanjutnya diproses / diolah oleh beberapa prosesor/computer terpisah secara PARALEL.
Komputer Paralel : Platform computer yg digunakan
Cluster : Komputer yang saling terhubung (Komputer multiProsesor) untuk menyelesaikan problem yang kompleks.
Komputasi paralel membutuhkan:
- algoritma
- bahasa pemrograman
- compiler
1.2 POTENSI PENINGKATAN KECEPATAN KOMPUTASI
1.2.1 Faktor Pemercepat
Fungsi p maupun jumlah data yg sedang DIPROSES n, sehingga S(p,n)
(Pada sub-topik ini, hanya variable p yg DIBAHAS)
Prosesor Tunggal > Menangani Algoritma Sekuensial
Prosesor Banyak > Menangani Algoritma Paralel
Percepatan Linier : Percepatan sebesar p dapat dicapai jika komputasi dibagi ke dalam beberapa proses dengan DURASI yang SAMA.
Percepatan Superlinier : Faktor Percepatan (S(p)) > Jumlah Prosesor (p)
Efisiensi
Jumlah waktu yang diperlukan oleh prosesor untuk melakukan KOMPUTASI.
Misalnya, E=50%, maka semua prosesor hanya digunakan SETENGAH waktu dari proses rata2 pada komputasi sebenarnya.
1.2.2 Percepatan Maksimal
Faktor yg akan muncul sebagai overhead pada versi PARALEL dan dapat MEMBATASI Percepatan, yaitu:
- Periode (jika prosesor TIDAK Mengerjakan proses dengan baik / idle)
- Komputasi Tambahan pada beberapa versi parallel tidak muncul pada versi sekuensial.
- Waktu KOMUNIKASI antarProses.

Pada setiap komputasi selalu ada bagian yang harus diproses dengan Algoritma Sekuensial, disebabkan bagian komputasi tsb TIDAK DAPAT DIBAGI menjad beberapa tugas, maka kita dapat peroleh bahwa terdapat Faktor Percepatan terhadap bagian Seri, f.
Skalabilitas
Skalabilitas Arsitektur (Hardware)
Skalabilitas Algoritma
FAKTOR PEMERCEPAT
-Hukum AMDAHL
Ts dan SKALA Ukuran Problem = konstan
-Hukum GUSTAFSON
Tp dan SKALA WAKTU = konstan
Agar tp konstan, ketika p meningkat, maka ukuran masalah pun Ditingkatkan.
Bagian Serial sudah Ditetapkan.

1.2.3 Komputasi Massage-Passing
Tp=Tcomp + Tcomm
=====Kesimpulan (15/1/2015)
Faktor yg Mempengaruhi Komputasi Paralel :
- Jumlah Prosesor (p)
- Jumlah Elemen Data (n)
- Waktu Komputasi (tcomp)
- Waktu Komunikasi (tcomm)
1.3 TIPE-TIPE KOMPUTER PARALEL
Tipenya yaitu,
- MultiProsesor Shared Memory
- MultiKomputer dengan Memori Terdistribusi
1.3.1 Sistem MultiProsesor Shared Memory
Konfogurasi Shared Memory: Setiap Prosesor dapat MENGAKSES Modul Memori mana pun.

Isi Shared Memory : Program berupa KODE agar setiap prosesor dapat mengaksesnya,
Kenapa harus menggunakan Bahasa Pemrograman Paralel Tingkat Tinggi?
Jawab: Untuk Menghasilkan KODE yang dapat DIEKSEKUSI oleh setiap Prosesor. Compiler-lah yang mengubah bahasa yang kita tulis tersebut menjadi KODE dari Source Code pemrogram.
OpenMP : Bahasa pemrograman Sekuensial yang Biasa Digunakan untuk menentukan Paralelisme. OpenMP ditambahkan pada C/C++ maupun Fortran.
Penelitian Saat ini….
Bagaimana MENGUBAH SYNTAX bahasa Pemrograman Sekuensial sehingga bisa DIGUNAKAN untuk menentukan PARALELISME.
One example that using that approach is UPC (Unified Parallel C).
Kelebihan Shared-Memory:
- Menjamin KENYAMANAN dalam SHARING Data.
INGAT kembali….. Cache Memory.
NUMA (NonUniform Memory Access) ialah ketika PROSESOR dapat MENGAKSES memori local terdekat LEBIH CEPAT daripada MENGAKSES memori yang letaknya jauh.
UMA(Uniform Memory Access) ialah sebaliknya.

1.3.2 MESSAGE-PASSING MULTICOMPUTER
Apa perbedaannya dengan Shared-Memory Multiprosesor?
Setiap computer memiliki satu memori tersendiri yang tidak dapat diakses oleh PROSESOR lain. Setiap Komputer di jaringan bersifat INDEPENDEN.
Lalu bagaimana computer/prosesor tersebut saling Berinteraksi?
Jaringan Interkoneksi memungkinkan PENGIRIMAN PESAN antar prosesor/computer. Suatu Problem dipecah menjadi beberapa bagian PROSES yang kemudian PROSES2 tsb DIKOMPUTASI oleh Setiap KOMPUTER/Prosesor dengan cara Pengiriman PEsan. Pendekatan yang digunakan adalah menggunakan ROUTINE MP yang DISISIPKAN ke dalam Program Sekuensial Konvensional yan DIGUNAKAN untuk PENGIRIMAN PESAN. Apabila Jumlah PROSES > jumlah Komputer, maka Setiap Komputer menjalankan beberapa PRoSES secara SIMULTAN dengan MODEL PEMBAGIAN WAKTU.
Pada MP MultiKompter ini dapat dilihat sebagai sebuah JARINGAN KOMPUTER/PROSESOR. Jaringan ini mewakili saluran fisik sebuah KONEKSI antara KOmputer sehingga dapat dilakukan PENGIRIMAN PESAN.
Hal yang UTAMA DIperhatikan pada DESAIN JARINGAN, ialah
- Bandwidth : Jumlah BIT yg dapat DITRANSMISIKAN (bps)
- Latency : Waktu yang DIPERLUKAN dalam pengiriman PESAN.
- Cost (Harga)
Istilah-Istilah :
- Network Latency : Lamanya waktu mengirimkan pesan dalam suatu jaringan
- Communication Latency : TOTAL waktu yang digunakan UNTUK MENGIRIM PESAN + Overhead Perangkat Lunak + Delay antarmuka.
- Message Latency : Waktu yang diperlukan untuk MENGIRIM PESAN KOSONG untuk PENCARIAN ROUTE.
- Bisection Width : Jumlah Link yang TERSEDIA
- Bisection Bandwidth : JUmlah Bandwidth pada link2 tsb.
JENIS JARINGAN yang Limited-Direct-Interconnected :
- Jaringan MESH,
- Jaringan HyperCube,
Suatu SWITCH berfungsi me-ROUTE-kan Pesan AntarKomputer.
Jenis SWITCH (saklar), ialah :
- Crossbar Switch,
- Tree Network,
Jaringan Interkoneksi MultiStage
Memiliki Sejumlah LEVEL pada Switch. Salah satu contohnya, ialah JARINGAN OMEGA.
Metode Komunikasi
Ada dua cara mendasar dalam MENGIRIMKAN PESAN dari Node ASAL-TUJUAN,
- Circuit Switching
Cara ini seperti koneksi TELEPON, ketika node ASAL terhubung dengan node TUJUAN, maka KONEKSI tsb TETAP DIPERTAHANKAN hingga akhir Pengiriman Pesan.
Kekurangan : Link lain tidak DAPAT menggunakan Jaringan yang dIGUNAKAN (saat menelpon) hingga suatu PESAN selesai DIKIRIM.
- Packet Switching
Teknik ini dapat diANALOGIkan seperti Pengiriman SURAT POS. Suatu PEsan akan TERSIMPAN pada BUFFER di suatu NODE jika TERHALANG untuk bergerak ke node Selanjutnya. Pesan dibagi ke beberapa PAKET INFORMASI. Setiap Paket membawa Alamat Asal dan Tujuan untuk ROUTING Paket melewati JAringan Interkoneksi dan data. Setiap PAKET memiliki batas Ukuran Maksimal. Jika Suatu pesan melebihi ukuran maksimal tsb, maka pesan akan dibagi menjadi beberapa PAKET, kemudian PAKET2 tsb akan DIKIRIM secara TERPISAH.
Store-and-Forward_packet Switching : Ketika suatu PESAN diproses TERLEBIH DAHULU sebelum Dikirim ke TUJUAN.
Teknik Cut-Through : Teknik Pengiriman PEsan yang jika LINK berikutnya TELAH TERSEDIA, maka PAKET langsung Diteruskan TANPA disimpan di BUFFER. Meskipun demikian, jika JALUR berikutnya TERHALANG, maka pesan disimpan di PENYIMPANAN SEMENTARA untuk menyelesaikan Pengiriman PEsan.
Teknik WormHole : Pesan dibagi menjadi beberapa bagian FLIT (Flow Control Digits). Ukuran FLIT = 1 atau 2 bit. HEADER FLIT lah yang pertama diTransmisikan ke TUJUAN. Ketika HEAD FLIT Bergerak Maju, Bagian pesan lainnya akan mengikutinya. Paket lain TIDAK DAPAT disisipi FLITZ sepanjang Jalur / Link yang digunakan SAMA. Panjang Jalur yang dilalui pesan mempengaruhi LATENCY.
LiveLock : Terjadi pada Algoritma Routing Adaptif dan Menggambarkan sebuah PESAN yang MENGELILINGI Jaringan tanpa MENGETAHUI TUJUANNYA.
DeadLock : Terjadi karena Suatu Paket TIDAK DAPAT DITERUSKAN karena Terhalang PESAN di node selanjutnya yang belum DITERUSKAN.
Solusi untuk DeadLock : Menyediakan sebuah VIRTUAL CHANNEL, dengan BUFFER Terpisah (masing2), untuk kelas2 PESAN.
1.3.2 Shared Memory Terdistribusi
Apa itu Shared Memory Terdistribusi ?
Itu adalah suatu bentuk jaringan yang setiap MEMORI terhubung pada setiap PROSESOR, tapi PROSESOR dapat MENGAKSES MEMORI secara keseluruhan menggunakan RUANG Alamat Memori Tunggal.
Apa itu Shared Virtual Memory ?
SVM ialah Sistem Manajemen Memori yang dapat menggambarkan bahwa seluruh Memori dapat diwakili oleh sebuah Memori Tunggal meskipun setiap memori digunakan oleh Komputer yang Berbeda.

Facebook
Google+
LinkedIn
E-mail
Menyukai ini:
Suka Memuat...