EKSPLOITASI INSTRUCTION-LEVEL PARALELLISM (ILP) PADA UNIPROCESSOR

dokumen-dokumen yang mirip
CHAPTER 16 INSTRUCTION-LEVEL PARALLELISM AND SUPERSCALAR PROCESSORS

Organisasi Sistem Komputer

Hanif Fakhrurroja, MT

SATUAN ACARA PERKULIAHAN

Konsep Organisasi dan Arsitektur Komputer (Pertemuan ke-2)

STRUKTUR CPU. Arsitektur Komputer

SATUAN ACARA PERKULIAHAN MATA KULIAH : Pengantar Organisasi dan Arsitektur Komputer Strata / Jurusan : Strata Satu / Sistem Informasi

William Stallings Computer Organization and Architecture

SATUAN ACARA PERKULIAHAN MATA KULIAH ORGANISASI DAN ARSITEKTUR KOMPUTER KODE MK: TE055217

Organisasi Komputer II STMIK-AUB SURAKARTA

Dua komponen yang menjalankan proses dalam komputer, yaitu : Central Processing Unit (CPU) Memory Kedua komponen tersebut terletak pada Motherboard.

Struktur Fungsi CPU. Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 03 --

Arsitektur Komputer. Pertemuan - 1. Oleh : Riyanto Sigit, S.T, M.Kom Nur Rosyid Mubtada i S.Kom Setiawardhana, S.T Hero Yudo Martono, S.

SATUAN ACARA PERKULIAHAN MATA KULIAH : Arsitektur Komputer Strata / Jurusan : Diploma Tiga / Teknik Komputer

Thread, SMP, dan Microkernel (P ( e P rtemuan ua ke-6) 6 Agustus 2014

Introduction to Computer Architecture. Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 01 --

Arsitektur Set Instruksi. Abdul Syukur

SATUAN ACARA PENGAJARAN

Organisasi & Arsitektur. Komputer. Org & Ars komp Klasifikasi Ars Komp Repr Data

Hal-hal yang perlu dilakukan CPU adalah : 1. Fetch Instruction = mengambil instruksi 2. Interpret Instruction = Menterjemahkan instruksi 3.

Organisasi Sistem Komputer

ARSITEKTUR KOMPUTER. Satu CPU yang mengeksekusi instruksi satu persatu dan menjemput atau menyimpan data satu persatu.

Pertemuan ke 6 Set Instruksi. Computer Organization Dosen : Eko Budi Setiawan

Arsitektur Komputer. Dua element utama pd sistem komputer konvensional: Memory Processor

Organisasi Komputer II STMIK AUB SURAKARTA

ARSITEKTUR DAN ORGANISASI KOMPUTER

Abstrak. Pendahuluan

Pendahuluan Arsitektur Organisasi Komputer

Cara Kerja Processor. Primo riveral. Abstrak. Pendahuluan.

Organisasi dan Arsitektur Komputer : Perancangan Kinerja

Semoga Tuhan memberi berkah pada kelas ini.

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

BAB I PENDAHULUAN 1.1 LATAR BELAKANG

Pertemuan ke - 4. Riyanto Sigit, ST. Nur Rosyid, S.kom Setiawardhana, ST Hero Yudo M, ST. Politeknik Elektronika Negeri Surabaya

RENCANA PEMBELAJARAN SEMESTER (RPS)

SEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN

Arsitektur dan Organisasi Komputer. Set instruksi dan Pengalamatan

>> CISC BANDING RISC

Disusun Oleh: Agenda. Terminologi Klasifikasi Flynn Komputer MIMD. Time Sharing Kesimpulan

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktifitas Pembelajaran

Materi 2: Computer Systems

Bagian 2 STRUKTUR CPU

ARSITEKTUR DAN ORGANISASI KOMPUTER

Unit Control (Hardwired and Micro-programmed)

TEKNIK PIPELINE & SUPERSCALAR. Team Dosen Telkom University 2016

SET INSTRUKSI. Organisasi dan Arsitektur Komputer

PERTEMUAN. 1. Organisasi Processor. 2. Organisasi Register

Instruction Execution Phases

RISC,CISC, DAN PROSESOR SUPERSCALAR

SATUAN ACARA PERKULIAHAN MATA KULIAH : Organisasi Sistem Komputer Strata/Jurusan : SI/T. Informatika

KLASIFIKASI ARSITEKTURAL

Pertemuan ke - 5 Struktur CPU

BAB II LANDASAN TEORI

Mengapa mempelajari Arsitektur dan Organisasi Komputer ARSITEKTUR DAN ORGANISASI KOMPUTER PART I: OVERVIEW 03/09/2014

Arsitektur RISC merupakan kemajuan yang sangat dramatis dalam frase sejarah arsitektur CPU. Dan merupakan tantangan bagi arsitektur konvensional

FORMULIR Satuan Acara Pengajaran

Materi 4: Microprocessor-Based Control

SATUAN ACARA PERKULIAHAN (SAP)

PAPER PIPELINE INSTRUKSI

Organisasi Komputer II. Micro-programmed Control. (Kontrol Termikroprogram)

Quis. 2. Sistem bilangan yang menggunakan basis 8 adalah: A. Biner D. Hexadesimal B. Oktal E. Sexagesimal C. Desimal

Arsitektur dan Organisasi

Pertemuan ke - 6 Struktur CPU

CPU PERKEMBANGAN ARSITEKTUR CPU. ( Central Processing Unit )

Kumpulan instruksi lengkap yang dimengerti

Struktur CPU 3/23/2011

Evolusi & Perkembangan Komputer BAB 02

CENTRAL PROCESSING UNIT CPU

Disusun Oleh Kelompok 5 : Abdul Haris Nabu Muh. Eka A.P Paputungan Afner Mengi Deasry Potangkuman Aufry Masugi Adel Mamonto

Apa yang dimaksud dengan program?

KEBUTUHAN KOMPUTER PARALEL

Materi 1: Pendahuluan

3. MODE PENGALAMATAN CHAERUL UMAM, S.KOM

System Buses. Eri Prasetyo W.

Sistem Operasi Pertemuan 1 Arsitektur Komputer. (Penyegaran) H u s n i Lab. Sistem Komputer & Jaringan Teknik Informatika Univ.

Arsitektur Komputer, Mikroprosesor dan Mikrokontroller. TTH2D3 Mikroprosesor

PENDAHULUAN. Motivasi : -. Pengolahan data numerik dalam jumlah yang sangat besar. -. Kebutuhan akan ketersediaan data yang senantiasa up to date.

Pertemuan Ke 2 Pengantar Organisasi Komputer. Organisasi Komputer 1 STMIK-AUB SURAKARTA

BAB I PENDAHULUAN Latar Belakang Masalah

RENCANA PEMBELAJARAN SEMESTER (RPS)

Tugas Arsitektur Komputer Lanjut

PENGANTAR ORGANISASI DAN ARSITEKTUR KOMPUTER CENTRAL PROCESSING UNIT

Set Instruksi & Mode Pengalamatan. Team Dosen Telkom University 2016

Komponen-komponen Komputer

Teknologi Scalar untuk meningkatkan Kinerja Prosesor

2009/2010 Course Plan. SK-208 Arsitektur Komputer Ir. Syahrul, MT.

PENDAHULUAN. -. Pengolahan data numerik dalam jumlah yang sangat besar. -. Kebutuhan akan ketersediaan data yang senantiasa up to date.

DASAR KOMPUTER DAN PEMROGRAMAN

ARSITEKTUR KOMPUTER SET INSTRUKSI

MICROPROCESSOR. Published by. imeldaflorensia91

Sejarah, Evolusi dan Kinerja Komputer Universitas Mercu Buana Yogyakarta

7.1 Pendahuluan. 7.2 Central Processing Unit (CPU)

ORGANISASI KOMPUTER DASAR

STRUKTUR FUNGSI CPU. Menjelaskan tentang komponen utama CPU. Membahas struktur dan fungsi internal prosesor, organisasi ALU, control unit dan register

Organisasi & Arsitektur Komputer

Ukuran semakin kecil, fleksibilitas meningkat Daya listrik lebih hemat, panas menurun Sambungan sedikit berarti semakin handal / reliable

Sistem Operasi. Struktur Sistem Komputer. Adhitya Nugraha. Fasilkom 10/6/2014

Set Instruksi: Set instruksi?

Transkripsi:

ISSN: 1693-6930 27 EKSPLOITASI INSTRUCTION-LEVEL PARALELLISM (ILP) PADA UNIPROCESSOR Kuspriyanto, Rustam Effendi Departemen Teknik Elektro, Institut Teknologi Bandung email :kuspriyanto@yahoo.com, rustamfellowship@yahoo.com Abstrak Saat ini para ilmuwan melakukan banyak penelitian dalam rangka meningkatkan performa komputer. Beberapa diantaranya mengkhususkan diri dalam mengembangkan parallelism baik pada Bit-Level Parallelism, Instruction-Level Parallelism maupun dengan konsep baru yang disebut Thread-Level Parallelism. Dengan dua sudut pandang yang berbeda, Instruction-Level Parallelism menghadapi kendala yang dalam eksploitasinya. Ketika perseteruan antara arsitektur dengan multiprocessor dengan perancangan uniprocessor yang sangat cepat masih ada, Instruction-Level Parallelism dapat mengambil peran penting untuk mengoptimisasi keduanya. 1. PENDAHULUAN Dengan sudut pandang software, Instruction-level parallelism memungkinkan suatu bagian dari instruksi-instruksi yang diperoleh dari suatu program sequential diparalelisasi untuk eksekusi pada banyak unit fungsional pipeline. Hal ini secara mendalam mempengaruhi perancangan banyak institusi perancang microprocessor dan compiler-compilernya. Sampai saat ini pengembangan ILP dianggap masih belum sempurna, dengan demikian penelitian masih berlanjut untuk menemukan optimisasi yang lebih baik untuk digunakan dalam rangka peningkatan performa komputer. 2. PARADIGMA PARALLELISM Sejak tahun 1970 sampai dengan tahun 1985, paradigma parallelism dimulai dengan perkembangan arsitektur komputer pada level hardware ditandai dengan dibuatnya microprocessor 4 bit, 8 bit, hingga 16 bit. Beberapa ilmuwan menyebut masa ini dengan era Bit-Level Parallelism. Selanjutnya, sejak tahun 1985 mulai dikembangkan arsitektur komputer pada level Instruksi yang dikenal dengan era Instruction-Level Parallelism sampai hari ini. Gambar 1. Perkembangan Paralelisasi Ekploitasi Instruction Level (Kuspriyanto)

28 ISSN: 1693-6930 Meskipun era ini belum akan ditinggalkan oleh para pengembang, telah muncul suatu paradigma baru mengenai suatu teknologi parallelism mulai dikembangkan yaitu Thread-Level Parallelism. 3. INSTRUCTION-LEVEL PARALLELISM Walaupun riset-riset terus dilakukan untuk meningkatkan kecepatan clock, sampai saat ini institusi-institusi pengembang microprocessor mendapatkan kenyataan bahwa pendekatan teknologi yang dilakukan masih tetap terbatas pada waktu siklus processor. Sehingga dimulailah pengembangan teknik optimisasi ILP untuk meningkatkan performa komputer dengan konsep umum pengeksekusian lebih banyak instruksi per satu siklus. Untuk mengeksekusi lebih banyak instruksi dalam satu siklus, diperlukan penambahan unit-unit fungsional unit integer, unit floating point, unit load/store dan unit-unit lain. Peluang diterapkannya teknik optimisasi ILP ini pada keadaan di mana beberapa instuksi dalam satu rangkaian (sequence) tidak bergantung terhadap hasil eksekusi instruksi yang lain. Sehingga langkah awal yang harus dilakukan dalam penerapan teknik ini adalah menemukan rangkaian instruksi mana yang sesuai dengan keadaan yang telah disebutkan sebelumnya. Suatu kenyataan yang menggembirakan mengenai optimisasi pada ILP adalah adanya kenyataan bahwa dengan Instruction-Level Parallelism performa komputer meningkat menjadi dua kali lipat dalam 1,5 tahun sejak tahun 1985. Kunci keberhasilan ILP adalah pada eksploitasi parallelism tanpa meminta programmer menulis ulang program-program yang sudah ada dengan memberikan kemampuan untuk melampaui kecepatan eksekusi dari instruksi-instruksi secara individual. Hal ini akan memberikan kemampuan otomatisasi pada ILP untuk mengoptimisasi kinerja komputer. Meskipun banyak pembahasan arsitektur komputer mengenai multiprocessor, aplikasiapliasi yang ada saat ini masih merupakan pemrogramman sequential, dan banyak diantaranya tidak akan pernah ditulis ulang kembali. 4. MACHINE PARALLELISM Kita harus dapat membedakan konsep machine parallelism dengan ILP. ILP ada ketika instruksi-instruksi dalam suatu bagian dalam rangkaian (sequence) bebas dari bagian yang lainnya. Sedangkan machine parallelism adalah ukuran dari kemampuan processor untuk memanfaatkan optimisasi ILP. Machine parallelism ditentukan oleh jumlah instruksi yang dapat di ambil (fetch) dan dieksekusi (execute) pada saat yang besamaan (jumlah parallel pipeline) dengan kecepatan mesin mutakhir di mana processor digunakan untuk menemukan instruksiinstruksi yang bebas (independent). Ada beberapa keterbatasan dalam teknik paralelisasi yang harus dapat dipecahkan dengan ILP yaitu: a. Instruksi-instruksi percabangan menghalangi determinasi dari instruksi-instruksi untuk dieksekusi (control dependences) b. Analisis yang tidak sempurna mengenai pengalamatan memori menghalangi penataan ulang operasi-operasi memori (ambiguous memory dependences) c. Aliran data program (algorithm) menghalangi parallelism (true dependences) d. Memperuncing dampak tersembunyi dari kebergantungan (dependences) Sebagai contoh dapat diperhatikan pada dua contoh kode dengan penggunaan beberapa register dalam satu sequence berikut ini. Load R1 R2 Add R3 1 Add R3 R2, 1 Add R4 R3, R2 Add R4 R4, R2 Store [R4] R0 Dapat dilihat bahwa tiga instruksi di sebelah kiri bebas, di mana pada masing-masing instruksi, register yang satu tidak memiliki ketergantungan terhadap register lainnya dalam satu rangkaian. Ini berarti ketiga instruksi ini dapat dieksekusi dalam waktu yang bersamaan dalam suatu paralelisasi. Sedangkan pada tiga instruksi di sebelah kanan, instruksi ke-dua tidak dapat dieksekusi bersama-sama dengan instruksi sebelumnya karena jika hal ini dilakukan TELKOMNIKA Vol. 4, No. 1, April 2006 : 27-32

TELKOMNIKA ISSN: 1693-6930 29 akan terjadi kesalahan operasi dimana isi register R3 belum terisi nilai yang benar. Keterbatasan yang sama juga terjadi pada instruksi ke-tiga di mana instruksi tidak dapat dieksekusi bersama-sama dengan instruksi sebelumnya karena jika dilakukan akan mengakibatkan penggunaan sumber (resources) yang sama yaitu register R4. Beberapa kendala kebergantungan lain yang berkaitan dengan penerapan Instruction- Level Parallelism pada satu processor (uniprocessor) dapat digambarkan sebagai berikut. Gambar 2. Akibat dari Kebergantungan (Dependencies) Machine Paralellism dapat diimplementasikan pada sistem yang menggunakan satu processor (uniprocessor) dan banyak processor (multiprocessor). 5. UNIPROCESSOR VS. ON-CHIP MULTIPROCESSOR Dalam arsitektur on-chip multiprocessor dilakukan pengurangan unit-unit fungsional pada setiap processornya dengan maksud untuk melakukan pendistribusian tugas pada setiap processornya. Berbeda dengan arsitektur on-chip multiprocessor, dalam arsitektur uniprocessor, unit-unit fungsionalnya berjumlah lebih banyak. Jika penambahan processor pada suatu arsitektur pada titik tertentu tidak lagi memberikan peningkatan performa yang signifikan, maka perlu dipikirkan suatu teknik lain yang sekiranya dapat menjawab tantangan ini. Tabel 1. Laporan peningkatan kecepatan Sumber Kecepatan Horst, Harris, and Jardine [1990 1,37 Wang and Wu [1988] 1,70 Smith, Johnson, and Horowitz [1989] 2,30 Murakami et al. [1989 2,55 Chang et al. [1991] 2,90 Jouppi and Wall [1989] 3,20 Lee, Kwok, and Briggs [1991] 3,50 Wall [1991] 5 Melvin and Patt [1991] 8 Butler et al. [1991] 17+ Ekploitasi Instruction Level (Kuspriyanto)

30 ISSN: 1693-6930 Processor Superscalar adalah processor yang mengimplementasikan optimisasi ILP pada arsitektur sequential. Tidak ada bukti yang dapat dipakai mengenai kemungkinan diterapkannya paralelisasi, sehingga penerapan ILP harus dilakukan oleh hardware, di mana selanjutnya harus dibangun suatu perencanaan untuk aksi-aksi eksploitasi paralelisasi. Tabel 1 adalah laporan mengenai peningkatan kecepatan mesin Superscalar. Processor Very Long Instruction Word (VLIW) adalah suatu contoh arsitektur di mana program memiliki informasi terinci yang diharapkan untuk paralelisasi. Program mengidentifikasi kemungkinan paralelisasi dalam program dan mengkomunikasikannya kepada hardware dengan menyebutkan operasi mana yang bebas dari operasi lainnya. Informasi ini langsung diberikan untuk hardware, di mana selanjutnya tanpa pengecekan lebih lanjut operasioperasi ini akan mulai dieksekusi pada siklus yang sama. Explicitly Parallel Instruction Computing (EPIC) [4] adalah model arsitektur yang merupakan suatu evolusi dari VLIW di mana telah mengadopsi banyak ide-ide terbaik dari processor superscalar. Pada Tabel 2 ditunjukkan hasil suatu riset mengenai penerapan optimisasi ILP pada mutiprocessor dan uniprocessor yang menggunakan program simulasi yang bernama Rice Simulator for ILP Multiprocessors (RSIM). RSIM memodelkan processor, sistem memori, dan jaringan secara detail beserta semua isinya (unit fungsionalnya). Kode-kode operasi dan sub sistem cache untuk pengujian model processor ini melakukan simulasi siklus-persiklus dan terhubung dengan simulator pengendali aksi-aksi untuk model jaringan dan model memori. Aplikasi ini di-compile dengan SPARC V9 gcc yang dimodifikasi untuk mengurangi terjadinya penundaan pada percabangan (branch) dan dibatasi untuk kode 32 bit. Berikut adalah beberapa aplikasi yang digunakan untuk beban pengujian model processor ini di mana aplikasiaplikasi ini mempunyai karakteristik yang berbeda satu sama lainnya. Hasil pengujian dengan simulasi ini diperlihatkan pada Gambar 3 dan 4. Tabel 2. Hasil riset penerapan optimisasi ILP pada mutiprocessor dan uniprocessor Aplikasi Jumlah Siklus LU 1,03 x 10 8 FFT 3,67 x 10 7 Radix 3,15 x 10 7 Mp3d 8,82 x 10 6 Water 2,68 x 10 8 Erlebacher 7,62 x 10 7 5 Overall SpeedUp 5 Overall SpeedUp IL P S p eed Up 4 3 2 1 2,33 3,65 1,56 2,19 3,35 1,51 1,35 3,70 1,24 2,04 3,20 1,02 2,21 3,45 1,02 1,26 3,40 0,74 CPU SpeedUp Data Mem SpeedUp IL P S p eed Up 4 3 2 1 3,19 3,75 2,11 2,43 3,56 1,63 2,11 3,08 1,40 2,38 3,21 1,00 2,87 3,46 1,01 1,97 3,36 0,85 CPU SpeedUp Data Mem SpeedUp 0 LU Erlebacher Mp3d FFT Water Radix Applications 0 LU Erlebacher Mp3d FFT Water Radix Applications Gambar 3. Performa ILP pada multiprocessor Gambar 4. Performa ILP pada uniprocessor Berdasarkan Gambar 3 dan 4, peningkatan performa ILP pada multiprocessor lebih kecil dibandingkan pada uniprocessor. TELKOMNIKA Vol. 4, No. 1, April 2006 : 27-32

TELKOMNIKA ISSN: 1693-6930 31 6. EKSPLOITASI INSTRUCTION-LEVEL PARALLELISM Usaha untuk meningkatkan performa sistem pada sistem processor tunggal secara umum telah fokuskan dengan menambah kemampuan processor. Dengan pendekatan ini, perancangan processor telah difokuskan pada pembuatan processor yang memungkinkan untuk mengeksekusi instruksi-instruksi lebih cepat melampaui kecepatan tinggi clock, ILP dan cache serta kecepatan akses memori. Sehingga untuk optimisasi ILP yang lebih sempurna diperlukan teknik yang dapat memanfaatkan kemampuan yang lebih dari processor cepat ini. Satu teknologi terbaru untuk menjawab tantangan ini adalah teknologi hyper-threading. Teknologi ini meningkatkan performa sistem dengan mengijinkan aplikasi yang mempunyai banyak aliran berpikir multiple thread untuk dijalankan pada sebuah processor tunggal pada suatu waktu dan berbagi sumber daya. Secara konsep, suatu aplikasi multiple thread adalah aplikasi yang mempunyai kemampuan memilah program menjadi tugas-tugas menjadi beberapa bagian kecil yang terdiri dari rangkaian instruksi-instruksi sehingga dapat dieksekusi secara paralel. Hal ini biasanya dikenal dengan Thread-Level Parallelism. Secara arsitektur, suatu processor dengan teknologi hyper-threading membentuk dua processor secara logic di mana setiap processornya secara individu mampu dihentikan, diinterupsi, dan dapat langsung mengeksekusi suatu thread tertentu. Setiap processor logic mengatur set bagian arsitektur yang utuh. Bagian arsitektur yang utuh secara logic ini terdiri atas register-register, register APIC (advanced programmable interupt controller), dan beberapa bagian register mesin lain. Dari sudut pandan software, jika bagian arsitektur yang secara logic ini digandakan, processor seakan-akan menjadi dua processor. Jumlah transistor untuk penyimpanan bagian arsitektur logic akan menjadi pecahan yang kecil dari total keseluruhan transistor. Processor logic ini akan berbagi sumber daya procesor secara fisik seperi cache, unit eksekusi, dan bus. Setiap processor logic mempunyai pengendali interupsi sendiri dan ditangani sendiri hanya oleh processor logic. Mengenai optimisasi ILP, ada beberapa fase yang dilakukan yang erat kaitannya dengan compiler. a. Analisis Program Fase ini menampilkan aliran control (control flow), aliran data (data flow), dan analisis kebergantungan data (data dependece analysis) untuk mengetahui pada bagian mana dari program yang memiliki peluang untuk di paralelisasi. b. Restrukturisasi Program Pada fase ini dilakukan peralihan (converting) dari program input ke suatu bentuk kode program paralel di mana instruksi-instruksinya dapat dieksekusi secara paralel.. c. Pembangkitan Kode Paralel Pada fase ini dilakukan peralihan (converting) kode secara serial menjadi kode dengan banyak thread (multithreaded) Di dalam optimisasi ILP dikenal suatu penjadwalan yang diimplementasikan pada suatu modul penjadwal (scheduler) yang dapat di digabungkan ke dalam suatu program preprocessor untuk menghasilkan suatu penjadwalan eksekusi statik (static scheduling). Keputusan scheduler akan direpresentasikan sebagai suatu sequence dari persoalan instruksi. Setiap persoalan menyatakan permulaan dari suatu tugas atau instruksi. ILP juga menggunakan penjadwalan dinamik (dynamic scheduling). Dua macam penjadwalan yang digunakan dalam ekspoitasi ILP [6] adalah sebagai berikut: a. Static scheduling yang terdiri atas : - simple scheduling - loop enrolling - loop enrolling + scheduling - software pipelining b. Dynamic scheduling yang terdiri atas : - out of order execution - dataflow computers Pada level perangkat keras, paralelisasi bertautan (sychronous parallelism) dapat menaikkan tingkat produksi. Hal ini terutama bermanfaat jika program melakukan operasioperasi yang sama pada semua komponen dari struktur umum. Pada multiprocessor penggunaan synchronous parallelism dimaksudkan untuk meningkatkan eksekusi dari jenisjenis masalah ini. Ekploitasi Instruction Level (Kuspriyanto)

32 ISSN: 1693-6930 7. KESIMPULAN Parallelism masih akan terus dikembangkan baik pada tingkat Bit-Level Parallelism, Instruction-Level Parallelism maupun Thread-Level Parallelism. Peningkatan performa suatu arsitektur dengan Machine Parallelism bukan berarti bahwa arsitektur Uniprocessor akan ditinggalkan begitu saja, melainkan sebaliknya dapat dilakukan optimisasi untuk peningkatan performanya. Peningkatan performa suatu arsitektur dapat terus dipacu dengan dukungan teknologi Hyper-Thread Parallelism serta pengembangan terus-menerus terhadap teknik-teknik di dalam optimisasi Instruction-Level Parallelism baik mengenai analisis program, restrukturisasi program, pembangkitan kode paralel, penjadwalan (static scheduling dan dynamic scheduling), prediksi percabangan (branch prediction), serta teknik-teknik lain di dalamnya. Masalah terbesar penggunaan multiprocessor secara fisik adalah ketika biaya yang diperlukan untuk suatu arsitektur multiprocessor tidak cukup sepadan dengan performa yang ditingkatkannya. Sehingga pengembangan paralelisasi pada arsitektur uniprocessor sangat logis untuk dipertahankan. DAFTAR PUSTAKA [1] Laxmi Narayan Bhuyan, Parallel Processing, http://www.cs.ucr.edu/~bhuyan/cs213/ 2004/ LECTURE1.ppt [2] Michael S. Schlansker, B. Ramakrishna Rau, EPIC: An Architecture for Instruction- Level Parallel Processors, www.hpl.hp.com [3] Richard Y. Kain, Advanced Computer Architecture, International Edition, Prentice Hall, 1996. [4] Vijay S. Pai, Parthasarathy Ranganathan, and Sarita V. Adve, The Impact of Instruction- Level Parallelism on Multiprocessor Performance and Simulation Methodology, International Edition, Prentice Hall, 2003. [5] William Stallings, Computer Organization and Architecture, Designing for Performance, Fifth Edition, Prentice Hall, 1996. [6], Intel Hyper-Threading Technology, Technical User s Guide, http://www.intel.com, 2003. [7], Why Parallel Architecture?, http://personal.denison.edu/~bressoud/ cs400- f04/lectures/01_whyparallel.pdf [8], Microprocessor Evolution: Past, Present, and Future,http://www.mtl.t.utokyo.ac.jp/~sakai/sohi/ talk1.pdf [9], Exploitation of Instruction-Level Parallelism, http://www.capsl.udel.edu/ courses/eleg652/2004/ slides/topic3-652.pdf TELKOMNIKA Vol. 4, No. 1, April 2006 : 27-32