Sunday, December 24, 2017

Pipeline, RISC, dan Prosesor Paralel

1. Pipeline & RISC
Dalam bidang komputasi, pipeline adalah set dari elemen pemroses data yang dihubungkan secara seri, dimana output dari sebuah elemen adalah input bagi elemen selanjutnya. Elemen dari sebuah pipeline seringkali dieksekusi dalam parallel, dan bila demikian maka beberapa buffer storage diletakkan diantara tiap elemen. Pipeline dapat digunakan untuk CPU maupun mengakses memory (DRAM)

Contoh pipeline:

-Instruction pipeline, termasuk RSIC, dimana digunakan dalam CPU untuk membolehkan pengeksekusian bertumpuk berbagai instruksi dalam sebuah rangkaian sirkuit. Rangkaian biasanya dibagi menjadi beberapa bagian seperti: instruction decode, aritmatika/logic, dan register fetch

-Graphic pipeline, ditemukan dalam GPU yang berisi banyak unit aritmatika ataupun CPU lengkap, yang mengimplementasikan berbagai tahap dari rendering seperti: proyeksi perspektif, window clipping, penghitungan warna dan cahaya, dll.)

-Software pipelines, dimana perintah dapat diberikan dan output dari sebuah operasi diberikan sebagai input secara otomatis ke perintah berikutnya. Contoh dari pipeline ini adalah Unix system call pipe.

-HTTP pipelining, dimana berbagai request dikirimkan tanpa menunggu hasil dari request pertama.
Implementasi:
-Buffered synchronous pipelines
-Buffered asynchronous pipelines

RISC
Dalam sejarah perangkat keras komputer, beberapa RISC CPU (Reduce Introduction Set Computer Central Processing Unit) menggunakan solusi arsitektur yang mirip, yang sekarang dinamakan classic RISC pipeline. Diantara CPU tersebut adalah: MIPS, SPARC, Motorola 88000, dan kemudian CPU DLX yang dikembangkan untuk edukasi.







5 tahap dasar dalam sebuah mesin RSIC:
IF= Instruction Fetch
ID= Instruction Decode
EX= Execute
MEM= Memory Access
WB= Register write back

2. Prosesor Paralel
Dalam komputer, parallel processing adalah pemrosesan instruksi program dengan membagi mereka diatara banyak prosesor dengan tujuan untuk menjalankan suatu program dengan waktu yang lebih singkat. Bentuk awal suatu pemrosesan parallel adalah menjalankan dua program secara bersamaan. Komputer akan menjalankan sebuah operasi I/O, dan sambil menunggu program selesai akan menjalankan processor-intensive program.
Perkembangan berikutnya adalah multiprogramming. Dalam sistem multiprogramming, beberapa program yang di-submit oleh user menggunakan prosesor untuk beberapa saat. Dari sisi pengguna, terlihat bahwa program berjalan secara bersamaan. Masalah yang dihadapi oleh sistem ini adalah deadlock dan critical section routine.
Kemudian, diperkenalkan vector processing sebagai usaha untuk menambahkan performa dengan melakukan lebih dari satu hal pada satu waktu. Mesin menjadi dapat melakukan satu instruksi (termauk membagi, mengkali, ataupun memanipulasi) dua array angka. Langkah berikutnya adalah multiprocessing, dalam sistem ini dua atau lebih prosesor membagi pekerjaan dan dihubungkan dengan konfigurasi master-slave.
Komputer parallel kurang lebih dapat diklasifikasikan menurut hardware:
- Multi-core dan Multi-processor memiliki berbagai processing element dalam satu mesin, dan
- Clusters, MPP, dan grid menggunakan beberapa komputer untuk menjalankan suatu tugas.

Jaringan Interkoneksi
Internet (Interconnected Network) merupakan jaringan global yang menghubungkan komputer yang satu dengan lainnya diseluruh dunia. Dengan Internet, komputer dapat saling terhubung untuk berkomunikasi, berbagi dan memperoleh informasi.  Dengan begitu maraknya informasi dan kegiatan di Internet, menjadikan Internet seakan-akan sebagai dunia tersendiri yang tanpa batas. Dunia didalam Internet disebut juga dengan dunia maya (cyberspace). Informasi dalam Internet umumnya disebarkan melalui suatu halaman website yang dibuat dengan format bahasa pemrograman HTML (Hypertext Markup Languange).

Mesin SIMD

SIMD (Single Instruction, Multiple Data) adalah sebuah kelas dari komputer parallel dalam Flynn’s taxonomy. Menjelaskan tentang komputer dengan beberapa elemen pemrosesan yang menjalankan satu operasi yang sama di berbagai data point secara bersamaan. Ada beberapa komputasi yang berjalan secara bersamaan, namun hanya satu proses/ instruksi yang diberikan.
SIMD umumnya digunakan dalam beberapa tugas umum seperti mengatur kontras pada sebuah gambar digital maupun volume dalam sebuah audio digital. Penggunaan SIMD pertamakali adalah pada tahun awal 1970 oleh vector supercomputer seperti CDC Star-100 dan Texas Instruments ASC.

Mesin MIMD

MIMD (Multiple Instruction, Multiple Data) adalah teknik yang dipakai untuk mencapai paralelisme. Mesing yang menggunakan MIMD memiliki beberapa prosesor yang berfungsi secara asinkronus dan independen. Setiap prosesor menjalankan tugas yang berbeda-beda di berbagai bagian data. Arsitektur MIMD digunakan pada desain dengan bantuan komputer/proses manufaktur dengan bantuan komputer, simulasi, dan modeling. Beberapa komputer yang menggunakan model MIMD adalah IBM POWER5, HP/Compaq AlphaServer, Intel IA32, AMD Opteron, Cray XT3 dan IBM BG/L.

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 secara langsung atau ridak langsung.

Sumber:
https://en.wikipedia.org/wiki/Pipeline_(computing)
https://techterms.com/definition/pipeline
https://en.wikipedia.org/wiki/Classic_RISC_pipeline

https://en.wikipedia.org/wiki/Parallel_computing
https://en.wikipedia.org/wiki/SIMD
https://en.wikipedia.org/wiki/MIMD

http://searchdatacenter.techtarget.com/definition/parallel-processing

No comments:

Post a Comment