Apa sih Pipelining dan RISC itu ?
Teknologi pipeline yang
digunakan pada komputer bertujuan untuk meningkatkan kinerja dari komputer Secara sederhana untuk
mempermudah operator, Pipelining adalah cara yang digunakan untuk melakukan sejumlah kerja
secara bersamaan ,teknik pemecahan satu pekerjaan/ tugas menjadi beberapa
subtugas,dan mengeksekusi sub-tugas tersebut secara bersamaan/ paralel dalam
unit-unit multi hardware atau segmen-segmen.
Tujuan yg ingin
dicapai dlm pipeline adalah untuk meningkatkan throughput. (the number of
instructions complete per unit of time - but it is not reduce the execution
time of an individual instruction) Waktu yg digunakan untuk eksekusi
setiap tugas sama dengan waktu yg digunakan untuk satu eksekusi nonpipeline.
Tetapi karena
eksekusi tugas yg berurutan dilakukan secara bersamaan, maka jumlah tugas yg
dapat dieksekusi dlm suatu waktu yg disediakan lebih tinggi, Hardware pipeline
menyediakan throughput yang lebih baik dibandingkan dgn hardware non-pipeline.
RISC adalah
komputasi kumpulan instruksi yang disederhanakan. RISC merupakan sebuah
arsitektur komputer atau arsitektur komputasi modern dengan instruksi-instruksi
dan jenis eksekusi yang paling sederhana. Arsitektur ini digunakan pada
komputer dengan kinerja tinggi, seperti komputer vektor. Selain digunakan dalam
komputer vektor, desainini juga diimplementasikan pada prosesor komputer lain,
seperti pada beberapamikroprosesor Intel 960, Itanium (IA64) dari Intel
Corporation, Alpha AXP dari DEC, R4x00dari MIPS Corporation, PowerPC dan
Arsitektur POWER dari International Business Machine.Selain itu, RISC juga umum
dipakai pada Advanced RISC Machine (ARM) dan StrongARM (termasuk di antaranya
adalah Intel XScale), SPARC dan UltraSPARC dari Sun Microsystems, serta PA-RISC dari
Hewlett-Packard.
Bagaimana Prosesor vektor pipelining beroperasi ?
Sebuah
prosesor vektor atau prosesor array, adalah unit pemrosesan sentral (CPU) yang
mengimplementasikan set instruksi berisi instruksi yang beroperasi pada satu
dimensi array data yang disebut vektor. Hal ini kontras dengan prosesor skalar
, yang instruksi beroperasi pada item data tunggal. Meskipun prosesor Intel dan
klon mereka desain awalnya sebagai skalar, model baru berisi peningkatan jumlah
vektor instruksi khusus seperti yang disediakan oleh Ekstensi Vector Lanjutan
ditetapkan.
Prosesor vektor
pertama kali muncul pada 1970-an, dan membentuk dasar dari yang paling
superkomputer di tahun 1980 dan 1990-an. Perbaikan dalam prosesor skalar,
terutama mikroprosesor , mengakibatkan penurunan prosesor vektor tradisional di
superkomputer, dan munculnya teknik pengolahan vektor di CPU pasar massal
sekitar awal 1990-an. Hari ini, CPU komoditas yang paling mengimplementasikan
arsitektur yang menampilkan instruksi untuk beberapa pemrosesan vektor pada
beberapa (vektoralisasi) set data, biasanya dikenal sebagai SIMD (Single
nstruction Multiple Data). Teknik pemrosesan vektor juga ditemukan di konsol
video game hardware dan akselerator grafis . Pada tahun 2000, IBM , Toshiba dan
Sony berkolaborasi untuk menciptakan prosesor Cell , yang terdiri dari satu
prosesor skalar dan delapan prosesor vektor, yang ditemukan digunakan dalam
Sony PlayStation 3 di antara aplikasi lain.
Desain Cpu
lain mungkin termasuk beberapa instruksi untuk pemrosesan vektor pada beberapa
set data, biasanya dikenal sebagai MIMD (Multiple Instruksi Multiple Data) desain seperti biasanya
didedikasikan untuk aplikasi tertentu dan tidak umum dipasarkan untuk komputasi
tujuan umum.
Mengapa Reduced Instruction Set Computer (RISC) banyak
menerapkan proses eksekusi pipeline ?
Pada arsitektur RISC : Set
instruksi yang terbatas dan sederhana Register general purpose yang berjumlah
banyak, atau penggunaan teknologi kompiler untuk mengoptimalkan pemakaian
registernya. Konsep arsitektur RISC banyak menerapkan proses eksekusi pipeline.
Meskipun jumlah perintah tunggal yang diperlukan untuk melakukan pekerjaan yang
diberikan mungkin lebih besar, eksekusi secara pipeline memerlukan waktu yang
lebih singkat daripada waktu untuk melakukan pekerjaan yang sama dengan
menggunakan perintah yang lebih rumit.Mesin RISC memerlukan memori yang lebih
besar untuk mengakomodasi program yang lebih besar. IBM 801 adalah prosesor
komersial pertama yang menggunakan pendekatan RISC.
Aspek
komputasi yang ditinjau dalam merancang mesin RISC adalah sbb.: Operasi-operasi
yang dilakukan: Hal ini menentukan fungsi-fungsi yang akan dilakukan oleh CPU
dan interaksinya dengan memori. Operand-operand yang digunakan: Jenis-jenis
operand dan frekuensi pemakaiannya akan menentukan organisasi memori untuk
menyimpannya dan mode pengalamatan untuk mengaksesnya. Pengurutan eksekusi: Hal
ini akan menentukan kontrol dan organisasi pipeline. Eksekusi Instruksi
PROSESOR PARALEL
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.
Tujuan utamanya untuk 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.
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 antara node dalam satu mesin
paralel. Selanjutnya pemakai harus membuat pemrograman paralel untuk
merealisasikan komputasi.
Jaringan Interkoneksi/Jaringan komputer adalah suatu pemetaan
sistem atau susunan interkoneksi antara node dalam suatu jaringan, baik secara
fisik maupun secara virtual. Topologi jaringan fisik menggambarkan metode yang
digunakan untuk melakukan pengkabelan atau hubungan fisik antar node dalam
suatu jaringan yang menghubungkan workstation dalam suatu jaringan. Menurut
bentuknya, topologi jaringan fisik dibagi menjadi beberapa jenis, antara lain
adalah sebagai berikut:
1.
Topologi bus merupakan topologi yang dipakai pada masa
penggunaan kabel coaxial. Topologi ini memiliki sistem sambungan serial yang
merupakan satu kabel memanjang yang masing-masing node terhubung pada kabel
tersebut. jenis ini hanya dipakai dalam sistem kabel modem.
2.
Topologi ring ini adalah topologi yang data serta trafficnya
disalurkan sedemikian rupa secara melingkar. Pada umumnya topologi ring
menggunakan kabel serat kaca sebagai sarananya. Karakteristik topologi ini
adalah lingkaran tertutup yang mana masing-masing node terhubung padanya.
Topologi ini sederhana namun mahal karena memiliki kecepatan transfer yang
tinggi menggunakan kabel serat kaca. Transmisi data pada ring bersifat satu
arah. Sistem topologi ring dapat menggunakan topologi ring ganda yang
masing-masing memiliki arah yang berbeda untuk mempercepat transfer data.
3.
Topologi ini adalah topologi yang paling banyak digunakan di
semua tempat di dunia karena kemudahannya dalam menambah, mengurangi dan
mendeteksi kerusakan perangkat jaringan yanga da. Topologi ini memiliki
karakteristik berupa adanya node central yang mana masing-masing node
berkomunikasi dengan node tersebut. traffic data mengalir dari node ke node
central dan sebaliknya menggunakan satu kabel yang terkoneksi langsung sehingga
mudah dikembangkan. Selain itu jika ada node yang kabelnya terputus, maka node
yang lain tidak akan terganggu.
4.
Topologi tree atau berbentuk pohon merupakan gabungan dari
ketiga node diatas. Sistem ini merupakan sistem yang biasa digunakan pada WAN
atau Internet. Masing-masing topologi digunakan untuk kepentingan tertentu.
Misalnya adalah topologi star digunakan dalam satu LAN, banyak komputer dalam
satu tempat menggunakan topologi ini. Sedangkan koneksi antara node server atau
router dalam satu WAN menggunakan topologi ring, bus atau star, tergantung dari
koneksi yang digunakan. Sedangkan topologi ring banyak digunakan untuk backbone
atau koneksi tulang punggung yang digunakan oleh penyedia jasa Internet.
Semua topologi diatas digunakan berdasarkan kebutuhan. Namun memang
beberapa topologi sudah banyak ditinggalkan karena tidak lagi dikembangkan.
Saat ini pengembangan berfokus pada topologi star yang memang memiliki banyak
keuntungan.
Mesin 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).
Mesin 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
Arsitektur pengganti Pemrograman paralel adalah
teknik pemrograman komputer yang mengcover 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. 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.
* 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.
Referensi :
Tidak ada komentar:
Posting Komentar