2. Prosesor Paralel
2.1 Jaringan Interkoneksi
Interkoneksi adalah hubungan yang terjadi antara
satu koneksi dengan koneksi yang lain. Interkoneksi antar jaringan adalah
hubungan atau koneksi antara satu jaringan dengan jaringan yang lain. Jaringan
yang terhubung ini bukan hanya jaringan telekomunikasi namun semua bentuk
jaringan yang melakukan interkoneksi.
Banyak yang menganalisa interkoneksi antar jaringan
adalah hubungan antar jaringan telekomunikasi. Namun secara harfiah
interkoneksi jaringan tidak hanya mengarah ke jaringan telekomunikasi, namun ke
semua jaringan.Topology nya adalah bagaimana sebuah jaringan itu terbentuk, dan
bagaimana keamanan dari jaringan itu sendiri.
Komputer yang terhubung dengan komputer yang lain
melalui jaringan dapat melakukan koneksi dengan konfigurasi jaringan. Koneksi
ini memerlukan sebuah Port Koneksi pada kartu jaringan (NIC = Network
Interface Card) yang berfungsi sebagai jembatan dari komputer ke sebuah
jaringan. Peralatan yang dibutuhkan untuk koneksi antara jaringan diantaranya
adalah :
1. NIC (Network Interface Card)
Fungsi NIC selain itu adalah untuk mengubah data
paralel dalam sebuah bus komputer ke dalam bentuk data serial. Untuk koneksi
ini NIC membutuhkan sebuah penghubung yang berupa kabel, kabel ini dapat berupa
kabel UTP atau Fiber Optic.
2. HUB
Hub ini ada dua jenis, yaitu passive hub dan active
hub. Fungsi hub adalah sebagai terminal penghubunga antara dua koneksi atau
lebih. Dimana hub ini sebagai terminal persinggahan dan menambah node didalam
sebuah LAN (Local Area Network).
3. Repeater
Repeater ini berfungsi memperluas cakupan suatu
jaringan tanpa melakukan filter terhadap
sinyal yang masuk dan keluar. Tugas utamanya mensikronisasikan dan
mentransmisikan ulang sinyal dari suatu segmen ke segmen yang lain didalam
sebuah jaringan.
4. Bridge
Fungsi Bridge kurang lebih sama dengan repeater
namun Bridge melakukan filter terhadap sinyal, sehingga setiap segmen tidak
dipengaruhi oleh segmen yang lain. Selain itu Bridge juga dapat menghubungkan
jaringan yang berbeda segmen protokol aksesnya,
namun dengan syarat protokol komunikasinya sama.
5. Router
Fungsi router adalah menentukan jalur routing dan
mengirimkan paket-paket informasi pada internet yang bekerja pada layer 3 OSI.
Komunikasi diantara terminal-terminal yang berbeda
harus dapat dilakukan dengan suatu media tertentu. Interkoneksi yang efektif
antara prosesor dan modul memori sangat penting dalam lingkungan komputer.
Menggunakan arsitektur bertopologi bus bukan merupakan solusi yang praktis
karena bus hanya sebuah pilihan yang baik ketika digunakan untuk menghubungkan
komponen-komponen dengan jumlah yang sedikit. Jumlah komponen dalam sebuah
modul IC bertambah seiring waktu. Oleh karena itu, topologi bus bukan topologi
yang cocok untuk kebutuhan interkoneksi komponen-komponen di dalam modul IC.
Selain itu juga tidak dapat diskalakan, diuji, dan kurang dapat disesuaikan,
serta menghasilkan kinerja toleransi kesalahan yang kecil.
Di sisi lain, sebuah
crossbar menyediakan interkoneksi penuh diantara semua terminal dari suatu
sistem tetapi dianggap sangat kompleks, mahal untuk membuatnya, dan sulit untuk
dikendalikan. Untuk alasan ini jaringan interkoneksi merupakan solusi media
komunikasi yang baik untuk sistem komputer dan telekomunikasi. Jaringan ini
membatasi jalur-jalur diantara terminal komunikasi yang berbeda untuk
mengurangi kerumitan dalam menyusun elemen switching.
Gambar
Arsitektur Crossbar
Jaringan interkoneksi
dapat dibagi menjadi statis atau jaringan langsung (direct network),
dinamis atau jaringan tidak langsung (undirect network), dan hybrid.
Jaringan hybrid adalah jaringan interkoneksi yang memiliki struktur yang
rumit.
Klarifikasi
Jaringan Interkoneksi
1.
Jaringan Interkoneksi Statis
Dalam jaringan interkoneksi statis, jalur diantara
terminal yang berbeda dari sistem bersifat pasif dan hanya jalur yang telah
ditentukan oleh prosesor pengendali yang dapat digunakan untuk berkomunikasi.
Masing-masing terminal dihubungkan secara langsung ke terminal lain dengan
jalur interkoneksi tertentu.
2.
Jaringan Intekoneksi Dinamis
Jika dibandingkan dengan jaringan statis, dengan
jalur interkoneksi antar terminal yang pasif, konfigurasi jalur dalam sebuah
jaringan interkoneksi dinamis merupakan fungsi dari kondisi elemen switching.
Jalur diantara terminal pada jaringan interkoneksi dinamis berubah sesuai
dengan perubahan kondisi elemen switching. Jaringan dinamis dibangun
menggunakan crossbar (khususnya yang berukuran 2 x 2).
Pemrosesan paralel (parallel processing) adalah
penggunakan lebih dari satu CPU untuk menjalankan sebuah program secara
simultan.Idealnya, parallel processing membuat program berjalan lebih cepat
karena semakin banyak CPU yang digunakan.
2.2 TUJUAN
PARALLEL PROCESSING
Tujuan utama dari pemrosesan paralel adalah untuk
meningkatkan performa komputasi. Semakin banyak hal yang bisa dilakukan secara
bersamaan (dalam waktu yang sama), semakin banyak pekerjaan yang bisa
diselesaikan.
2.3 KOMPUTASI
PARALEL
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.
Pemrograman Paralel sendiri adalah teknik
pemrograman komputer yang memungkinkan eksekusi perintah/operasi secara
bersamaan. Bila komputer yang digunakan secara bersamaan tersebut dilakukan
oleh komputer-komputer terpisah yang terhubung dalam satu jaringan komputer,
biasanya disebut sistem terdistribusi. Bahasa pemrograman yang populer
digunakan dalam pemrograman paralel adalah MPI (Message Passing Interface) dan
PVM (Parallel Virtual Machine).
Yang perlu diingat adalah komputasi paralel berbeda
dengan multitasking. Pengertian multitasking adalah komputer dengan processor
tunggal mengeksekusi beberapa tugas secara bersamaan. Walaupun beberapa orang
yang bergelut di bidang sistem operasi beranggapan bahwa komputer tunggal tidak
bisa melakukan beberapa pekerjaan sekaligus, melainkan proses penjadwalan yang
berlakukan pada sistem operasi membuat komputer seperti mengerjakan tugas
secara bersamaan. Sedangkan komputasi paralel sudah dijelaskan sebelumnya,
bahwa komputasi paralel menggunakan beberapa processor atau komputer. Selain
itu komputasi paralel tidak menggunakan arsitektur Von Neumann.
Untuk lebih memperjelas lebih dalam mengenai
perbedaan komputasi tunggal (menggunakan 1 processor) dengan komputasi paralel
(menggunakan beberapa processor), maka kita harus mengetahui terlebih dahulu
pengertian mengenai model dari komputasi. Ada 4 model komputasi yang digunakan,
yaitu:
• SIMD
• SIMD
• MISD
• MIMD
2.4 SISD
Yang merupakan singkatan dari Single Instruction,
Single Data adalah satu-satunya yang menggunakan arsitektur Von Neumann. Ini
dikarenakan pada model ini hanya digunakan 1 processor saja. Oleh karena itu
model ini bisa dikatakan sebagai model untuk komputasi tunggal. Sedangkan
ketiga model lainnya merupakan komputasi paralel yang menggunakan beberapa
processor. Beberapa contoh komputer yang menggunakan model SISD adalah UNIVAC1,
IBM 360, CDC 7600, Cray 1 dan PDP 1.
2.5 SIMD
Yang merupakan singkatan dari Single Instruction,
Multiple Data. SIMD menggunakan banyak processor dengan instruksi yang sama,
namun setiap processor mengolah data yang berbeda. Sebagai contoh kita ingin
mencari angka 27 pada deretan angka yang terdiri dari 100 angka, dan kita
menggunakan 5 processor. Pada setiap processor kita menggunakan algoritma atau
perintah yang sama, namun data yang diproses berbeda. Misalnya processor 1
mengolah data dari deretan / urutan pertama hingga urutan ke 20, processor 2
mengolah data dari urutan 21 sampai urutan 40, begitu pun untuk
processor-processor yang lain. 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).
2.6 MISD
Yang merupakan singkatan dari Multiple Instruction,
Single Data. MISD menggunakan banyak processor dengan setiap processor
menggunakan instruksi yang berbeda namun mengolah data yang sama. Hal ini
merupakan kebalikan dari model SIMD. Untuk contoh, kita bisa menggunakan kasus
yang sama pada contoh model SIMD namun cara penyelesaian yang berbeda. Pada
MISD jika pada komputer pertama, kedua, ketiga, keempat dan kelima sama-sama
mengolah data dari urutan 1-100, namun algoritma yang digunakan untuk teknik
pencariannya berbeda di setiap processor. Sampai saat ini belum ada komputer
yang menggunakan model MISD.
2.7 MIMD
Yang merupakan singkatan dari Multiple Instruction,
Multiple Data. MIMD menggunakan banyak processor dengan setiap processor
memiliki instruksi yang berbeda dan mengolah data yang berbeda. Namun banyak
komputer yang menggunakan model MIMD juga memasukkan komponen untuk model SIMD.
Beberapa komputer yang menggunakan model MIMD adalah IBM POWER5, HP/Compaq
AlphaServer, Intel IA32, AMD Opteron, Cray XT3 dan IBM BG/L.
Singkatnya untuk perbedaan antara komputasi tunggal
dengan komputasi paralel, bisa digambarkan pada gambar di bawah ini:

Penyelesaian Sebuah Masalah pada Komputasi Tunggal

Penyelesaian Sebuah Masalah pada Komputasi Paralel
Dari perbedaan kedua gambar di atas, kita dapat
menyimpulkan bahwa kinerja komputasi paralel lebih efektif dan dapat menghemat waktu
untuk pemrosesan data yang banyak daripada komputasi tunggal.
Dari penjelasan-penjelasan di atas, kita bisa
mendapatkan jawaban mengapa dan kapan kita perlu menggunakan komputasi paralel.
Jawabannya adalah karena komputasi paralel jauh lebih menghemat waktu dan
sangat efektif ketika kita harus mengolah data dalam jumlah yang besar. Namun
keefektifan akan hilang ketika kita hanya mengolah data dalam jumlah yang
kecil, karena data dengan jumlah kecil atau sedikit lebih efektif jika kita
menggunakan komputasi tunggal.
Komputasi paralel membutuhkan :
• algoritma
• bahasa pemrograman
• compiler
Pemrograman paralel adalah teknik pemrograman
komputer yang memungkinkan eksekusi perintah/operasi secara bersamaan baik
dalam komputer dengan satu (prosesor tunggal) ataupun banyak (prosesor ganda
dengan mesin paralel) CPU.
Tujuan utama dari pemrograman paralel adalah untuk
meningkatkan performa komputasi.
* Message Passing Interface (MPI)
MPI adalah sebuah standard pemrograman yang
memungkinkan pemrogram untuk membuat sebuah aplikasi yang dapat dijalankan
secara paralel. MPI menyediakan
fungsi-fungsi untuk menukarkan antar pesan. Kegunaan MPI yang lain adalah
1.
menulis kode
paralel secara portable
2.
mendapatkan
performa yang tinggi dalam pemrograman paralel, dan
3.
menghadapi
permasalahan yang melibatkan hubungan data irregular atau dinamis yang tidak begitu
cocok dengan model data paralel.
2.8 HUBUNGAN
ANTARA KOMPUTASI MODERN DENGAN PARALEL PROCESSING
Hubungan antara komputasi modern dan parallel
processing sangat berkaitan, karena penggunaan komputer saat ini atau komputasi
dianggap lebih cepat dibandingkan dengan penyelesaian masalah secara manual.
Dengan begitu peningkatan kinerja atau proses komputasi semakin diterapkan, dan
salah satu caranya adalah dengan meningkatkan kecepatan perangkat keras. Dimana
komponen utama dalam perangkat keras komputer adalah processor. Sedangkan
parallel processing adalah penggunaan beberapa processor (multiprocessor atau
arsitektur komputer dengan banyak processor) agar kinerja computer semakin
cepat.
Kinerja komputasi dengan menggunakan paralel
processing itu menggunakan dan memanfaatkan beberapa komputer atau CPU untuk
menemukan suatu pemecahan masalah dari masalah yang ada. Sehingga dapat
diselesaikan dengan cepat daripada menggunakan satu komputer saja. Komputasi
dengan paralel processing akan menggabungkan beberapa CPU, dan membagi-bagi
tugas untuk masing-masing CPU tersebut. Jadi, satu masalah terbagi-bagi
penyelesaiannya. Tetapi ini untuk masalah yang besar saja, komputasi yang
masalah kecil, lebih murah menggunakan satu CPU saja.
2.9 ARSITEKTUR
PENGGANTI
Dalam bidang teknik komputer, arsitektur pengganti
merupakan konsep perencanaan atau struktur pengoperasian dasar dalam komputer
atau bisa dikatakan rencana cetak biru dan deskripsi fungsional kebutuhan dari
perangkat keras yang didesain. implementasi perencanaan dari masing-masing
bagian seperti CPU, RAM, ROM, Memory Cache, dll
Bagian berikut akan membahas secara singkat mengenai
dua alternatif bagi arsitektur flow-control konvensional. Salah satunya adalah
prosesor dataflow (arus data). Tidak seperti halnya dalam mesin von Neumann,
yakni bahwa program menentukan kapan mereka akan menjalankan operasi, prosesor
dataflow ini adalah availability data yang menentukan kapan prosesor dataflow
akan menjalankan operasi. Kelompok lain dari arsitektur pengganti yang
baru-baru ini telah diperkenalkan adalah jaringan neural. Ia agak didasarkan
pada sistem biologis dan terdiri atas sejumlah elemen komputasional yang sangat
sederhana yang beroperasi secara paralel. Walaupun tidak dirancang sebagai
komputer penggunaan umum, namun jaringan neural ini telah menunjukkanbahwa ia
bisa digunakan untuk pemrosesan signal dan aplikasi rekognisi pola.
2.9.1 Arsitektur Dataflow
Algoritma, seperti halnya arah dan menu, adalah
rangkaian langkah yang menetapkan proses. Sebagian besar pemrograman berisi
pembuatan algoritma berurutan yang dinyatakan dalam bahasa pemrograman yang
terprosedur. Apabila ada yang putus dalam rangkaian (branch), maka secara sendiri
program menentukan instruksi apa yang berikutnya harus dijalankan komputer.
Para arsitek merancang mesin von Neumann untuk menjalankan rangkaian instruksi,
sehingga mesin ini sangat cocok untuk menjalankan program yang ditulis dalam
bahasa yang terprosedur.
2.9.2 Jaringan Neural
Para arsitek, dalam usahanya agar bisa menggunakan
paralelisme yang melekat pada sistem yang asli, telah merancang arsitektur
komputer yang secara terkait didasarkan pada jaringan neural biologis. Walaupun
jaringan neural artifIcial, seperti halnya jaringan biologis, memerlukan
sejumlah besar elemen komputasional, namun ada empat faktor yang membuatnya
feasibel (Iayak digunakan):
1.
Komponen dasar,
yakni neuron yang disimulasi mempunyai kompleksitas komputasional yang
sederhana dan mempunyai count gate yang kecil (beberapa lusin).
2.
Interkoneksinya
sangat sederhana, dan interkoneksi ini cenderung bersifat repetitif.
3.
Komunikasi yang
diperlukannya hanyalah dengan neighbor yang ada dalam radius yang sudah pasti.
4.
Komponen untuk
integrasis kala yang sangat besar (VLSI) tidak mahal lagi, sehingga biaya
pembangunan sistem dengan jumlah prosesor yang besar tidak ada masalah.
Daftar pustaka :
http://riofajar1012.blogspot.co.id/2016/11/prosesor-paralel.html
http://andi-granderist.blogspot.co.id/2013/01/pipelining-risc-dan-prosesor-paralel.html


Tidak ada komentar:
Posting Komentar