• Tidak ada hasil yang ditemukan

Pemanfaatan Bahasa Pendiskripsian Mesin (Machine Description) pada teknologi kompilator arsitektur VLIW

N/A
N/A
Protected

Academic year: 2021

Membagikan "Pemanfaatan Bahasa Pendiskripsian Mesin (Machine Description) pada teknologi kompilator arsitektur VLIW"

Copied!
5
0
0

Teks penuh

(1)

Pemanfaatan Bahasa Pendiskripsian Mesin ( Machine Description) pada

teknologi kompilator arsitektur VLIW

Debyo Saptonor, Joko Purnomot, Eri Prasetyo3

r'2Jurusan Teknik Elektro, Fakultas Teknologi Industri, Universitas Gunadarma 3J.r.usan si$tcm Komput€r, Fakultas lbnu {omputer, iJniversitas Gunadarma I

debyo@staff-gpnadarma.ac.id, 2 iokoourn@staff.gunadarma.ac.id. 3 eri@staff.gunadarma.ac.id

Abstrak

Arsitektur komputer berbasiskan prosesor Very Long Instruction Word (VLIW) adalah satu pilihan yang optimal dalam usaha untuk memperoleh tingkat performansi yang"tinggi pada suatu peralatan aplikasi sistem embedded. . Efektifitas dari jenis-jenis prosesor ini tergantung dari kemampuan kompilatornya untuk menyediakan Instruction Level Parallelism (ILP) dalam kode program.

Penggunaan kompilator VLIW yang bersifat retargetable dapat digunakan untuk mendislaipsikap prosesor taxget yang diharapkan. Seperti kompilator VLIW yang digunakan dalam analisis adalah OpenIMPACT yang diideshipsikan untuk prosesor DSP keluaran Texas Instrument (TI) dengan menggunakan Machine Description Languages (MDES).

Analisis yang tepat sangat diperlukan untuk menghasilkan suatu peralatan yang berkinerja tinggi, terutama analisis pada kompilator yang menghasilkan tingkat ILP yang tinggi pada beberapa aplikasi pengolatran sinyal digital. Sebagai pembanding kinerja kompilator OpenIMPACT digunakan kompilator VEX yang bekerja pada jenis arsistektur VLIW

juga-Hasil simulasi yang dilakukan menggunakan Lsim menunjukkan bahwa kompilator OpenIMPACT dapat menghasilkan ILP yang tinggi dibandingkan VEX C dengan pengaturan konfigurasi perangkat keras yang relatif sama..

Kata kunci: Kompilator VLIW retargetabte, ILP, MDES, OpenIMPACT , l/EX C

l. Pendahuluan

Saat ini perkembangan penggunaan tools untuk menggantikan peran perangkat keras dalam bidang desain prosesor mulai meningkat pesat. Terutama dalam bidang sistem embedded yang memerlukan trade-off antara space, time, and energi Penggunaan tools ini akan mengurangi perancangan yang lebih rumit pada perangkat keras karena sudah dilah*an oleh kompilator.

Kompilator secara tradisional hanya mempunyai satu tujuan yaitu mempercepat suatu aplikasi running pada suatu prosesor. Dengan kata lain , hampir sebagian usaha untuk mendapatkan optimisasi kerja pada kompilator mempunyai satu dimensi yaitu cost function yang direpresentasikan dengan jumlah siklus yang diperlukan dalam mengeksekusi program (time execation). Dalam bidang embedded, ada beberapa dimensi tambahan untuk meningkatkan kecepatan eksekusi yaitu : ukuran kode (code size) dan energi (energt). l3l

Salah satu cara untuk meningkatkan dimensi time execution pada kompilator dengan menerapkan orientasi ILP ( ILP-oriented) pada bagian pembangkit kode antara (IR generator) seperti terlihat pada gambar 7 . Penerapan ini akan berhasil jika kompilator dapat melakukan dua hal, pertama predikasi eksekusi Qredicated uecution) yaitu sebuah cara untuk menghilangkan batasan performansi ditentukan dengan keputusan untuk sering mengkontrol pada prosesor berkemampuan tinggi sedangkan yang kedua mampu mengelola dan menggunakan memori yang tergantung informasi selama proses kompilasi [3].

Saat ini sudah ada beberapa kompilator yang didesain untuk orientasi ILP dan dapat bekerja pada arsitektur VLIW. Dalam artikel ini, penulis akan membahas kompilator OpenIMPACT yang bersifat retargetable dan VEX C yang diturunkan dari kelurga prosesor HP/ST Lx (non retargetable) [2]. Pada umurnnya kompilator retargetable memerlukan bahasa pendiskripsian mesin untuk prosesor taxget yang diharapkan. OpenIMPACT

(2)

menggunakan HMDES pendiskripsiannya. [4].

sebagai bahasa

Very Hisrh very Lons TBH::3f'

High Iong Long

t;iffi" Hish sho'r shorr

RISC low-l\,ledium Very Shorr Very Shorl

Gambar l. perbandingan kinerja custom VLIW dengan teknologi lainnya.

Kedua jenis kompilator ini mampu melakukan customised oriented pada prosesor VLIW ( castom

VLfn wahupun pada kompilator OpenIMPACT terbatas hanya pada 3 hal yaitu ukuran file register ( register file sbes), jumlah unit fungsional dan nilai untuk latensi operasi (operation latency values). Pada gambar I terlihat bahwa custom VLIW cukup bagus dari performansi Qterformance), time to market , dan time to changefungsionality.

2. Metode Penelitian 2.1 Kompilator OpenIMPACT

OpenIMPACT adalah kompilator yang dapat didesain untuk berbagai target prosesor dan dapat menjalankan instruksi secara paralel dengan menggunakan ILP. Pada bagian front-endnya akan menghasilkan keluaran berupa kode antara atau yang dikenal sebagai Interrnediate Representatiorz (IR) Lcode. Kode Lcode ini mendiskripsikan perintah-perintah instruksi (opcode) berupa kode assembly. Pembangkit kode ini bekerja bmelalui berberapa tahap yaitu : tahapl akan menyeleksi opcode Lcode dengan melakukan penanganan operasi yang komplek seperti Multiply Accumulate (MAC), tahap 2 akan melakukan proses penjadwalan dan optimisasi mesin yang dependensi dan terakhir tahap 3 akan menghasilan kode assembly .

Kompilator ini mempunyai arsitekrur default seperti pada gambar 2 dimana pada bagian jalur merah dimungkinkan untuk melakukan customisasi untuk arsitektur prosesor target yang diharapkan seperti jumlah fungsional unit yang digunakan antara lain unit memori, unit integer, unit branch dan unit floating point.

Gambar 2: Arsitektur default pada OpenIMPACT Target prosesor yang bisa dihasilkan oleh kompilator ini dispesifikasikan melalui bahasa pendiskripsian mesin yang terbagi menjadi 3 bagian yaitu : bagian detail procesor seperti layout frame fungsi, akses terhadap variabel lokal, fungsi nilai kembalian register, register spesifik pada mesin pada seksi Mspec, bagian pendiskripsi mesin (Mdes) yang akan mendiskripsikan kumpulan operasi yang mendukung arsitektur prosesor, lapisan fisik seperti unit fungsional yang digunakan dan tipe masing-masing operand dan terakhir register files yang mendukung tipe data yang didiskripsikan dalam antarmuka Register Allocator.

Informasi Mspec pertama kali digunakan oleh front end IMPACT untuk mensinteas Lcode dari file sumber dalam bahasa C. Mspec juga menyimpan informasi yang berguna untuk optimator. Kemudian bagian selanjutnya adalah Mdes yang digunakan untuk bagian penjadwalan kompilator untuk menghasilkan tabel reservasi yang menyimpan track penggunakan resource fisik prosesor. Bagian Mdes ini dideskripsikan menggunakan bahasa pemrograman berbasis text yang dikenal sebagai HMDES [6].

2.1.1 Model pendiskripsian HMDES

Informasi mengenai mesin diperlukan oleh kompilator yang terbagi atas 6 jenis informasi yang masing-masing informasi tersebut mempunyai stuktur hirarki tiap bagiannya yaitu : informasi register, informasi format, informasi penggunaan resource, informasi operasi, informasi latensi, dan informasi kompilator khusus.

nformasi register berisi pendiskripsian jenis-jenis register yang digunakan dan overlapnya. pada bagian ini dapat menentukan kelas register (register

class) seperti caller, stack pointer, frame pointer atau

general purpose. Jenis-jenis register yang digunakan oleh mesin dengan tiap-tiap register mempunyai kelas field, lebar, dan informasi overlap. Jenis-jenis register file yang menentukan secara fisik ( static atau rotate) dan logik ( konstan integer).

ffi,

'::ti' v, tt o

8.

AStC DSP

(3)

Informasi format berisi informasi yang menentukan operasi apa yang diijinkan. Terdapat pendiskripsian tipe field untuk satu operand dan kompatibilitasnya dengan tipe field lainnya. Sedangkan format operasi mendiskripsikan sebuah format yang terdiri beberapa tipe field yang valid unnrk operand sumber, tujuan, dan predicate.

Informasi penggunaim resource mendiskripsikan latensi untuk operan sumber dan tujuan. Terdapat 5 bagian yang penting yaitu resource yang berisi resource baik fisik atau logik di dalam mesin yang akan digunakan nanti dalam menentukan tabel reservasi, informasi penggunaan resource. unit resource, pilihan tabel, dan tabel reservasi .

Informasi latensi menentukan openm yang akan melakukan latensi dan jenis operasinya.

Informasi operasi menentukan opcode unhrk mesin dan gabungannya terhadap informasi format, resource dan latensi.

Terakhir, informasi kompilator khusus unhrk menyimpan informasi yang diperlukan oleh kompilator seperti pemetaan operasi.

Gambar 3. Hubungan antar informasi pada HMDES 2.1.2 Deskripsi MDES untuk targat prosesor TI DSP

Untuk mendiskripskan suatu arsitekfur ke dalam bahasa ini diperlukan pemahanan mendasar mengenai penulisan teksnya. Berikut ini contoh penulisan untuk register files pada keluarga TI . /* Register Files */

$def !integer_32 I $deflinteger_64 2 $def !float_32 3 $def !float_64 4 CREATE SECTION Resister REQUIREDtype(INT);

CREATE SECTION Register_File REQUIRED number(INT); REQUIRED type(INT); REQUIRED gpr(LlNK(Register)*); REQUIRED outports(LlNK(Port)* ); REQUIRED inports(LlNK(Port)*); OPTIONAL rotating(LlNK(Register) *); { l Gambar 4: Arsitektur TI TMS320 C62X DSP 2.2 Kompilator VEX C : Vliw EXample

Model simulator VEX merupakan tools yang dapat

digunakan untuk mendesain prosesor VLIW

embedded dengan kemudahan untuk

mengkombinasikan pengaturan lebar data, jumlah register dan unit firngsional yang digunakan dan penambahan set instruksi yang baru .Simulator ini diturunkan dari keluarga HP/ST Lx.

-!il i '* l€i , r! -). ,,:, I ; , i l h r l ' ) lJFl i ld-tt l ll i\ ; ' n d i . - i iriti r : :: !_i : J : l i-___j i l , t -,T3 l . q l i l i r i l i i I --I r l l i -f= i x L i Dd: Crh(Alrfrr\ t - . l 6 - J : b i l d ] u

(4)

_ l -

I

l . M r F t L u R )

-I

|

*;-l*

l i t @ r y 6 : b # t r 4 M i tuot d r i - ' - - . T s r y 3 Y n ' h . i . t . ' l . ' -I {e OgsidM . I t . ' l . ' -OgsidM I

::::-J-::---

-f

' | . b f f i )

Gambar 6 : Struktur kompilator dan simulator VEX

2.3 Model layer kompilator VLIW

Berdasarkan cara kerja kompilator VLIW seperti gambar 6 di bawah ini terlihat bahwa bagian pembangkit kode ( middle-end) akan melakukan orientasi ILP dari keluaran front-end. Kualitas suatu kompilator sangat ditentukan pada bagian ini t3l.

C o.;--1 --h; l

ILP

performarf,e

inlPC

metrics

l'.,1 E l!.'qc.3T

Gambar 8. Graftk ILP dalam ukuran IPC Pada tabel berikut ini terlihat nilai simulasi total siklus dan IPC yang dihasilkan untuk tiap-tiap algoritrna yang dijalankan.

Tabel I : Pengukuran ILP berdasarkan nilai IPC pada kedua kompilator.

4. Kesimpulan dan Saran

Pembuatan HMDES untuk target prosesor TI DSP telah dibuat dengan baik dan dijalankan pada kompilator OpenIMPACT. Hasil simulasi pada kompilator OpenIMPACT menunjukkan nilai IPC relatif lebih baik dibandingan menggunakan VEX C seperti terlihat pada gambar 8 dan tabel l. Pengujian kedua kompilator ini menggunakan parameter pengaturan variabel yang setara antara kedua kompilator meskipun berbeda target prosesor yang digunakan. Untuk mengetahui lebih baik hasil pengujian keduanya bisa ditingkatkan dengan membuat target prosesor HP/ST Lx menggunakan HMDES dan dijalankan pada kompilator OpenIMPACT. ! sddsuF I { t r | @ d ; h f f i ) l I ---t-1 l . A d y r ^ _ * * --ffi-- ^'T:g-bw

Gambar 7 : Strukf,ur lapisan kompilator VLIW Untuk mendapatkan target prosesor yang diharapkan diperlukan pendeskripsian melalui tools HMDES dan akan diumpankan pada bagian back-end dari kompilator tersebut.

3. Hasil dan Pembahasan

Setelah pendiskripsian dilakukan menggunakan tools HMDES, kompilator OpenIMPACT menjalankan beberapa algoritma pengolahan sinyal digital yang ditulis menggunakan bahasa c. Pengujian dilakukan pada sistem operasi Linux dengan prosesor Intel Core 2 .

Pada Gambar 8 terlihat bahwa ILP yang tinggi akan menghasilkan nilai IPC yang tinggi pula.

4 r - - - . '

Algoritma VEX C OpenIMPACT

Tot cvc IPC Tot cyc IPC

Konvolusi 778r9 r.78 46009 3 . 8 5 Erodine 6 1 5 9 .30 27r8 3.30 IDCT 361379 2.54 299007 3 . 8 9 Median 2450 1 . 2 6 l 9 l 3 2.05 Sobel 828070 1 . 2 3 3 1 0 7 8 1 2.64 Wavelet 45594 1 . 7 6555 1 . 6

(5)

t2l

t3l

t4l

l5l t6l

I7)

t8l

Daftar Pustaka:

tll Brost Vincent, Fan Yang, Michel Paindavoine, and Nicolas Famrgia" "Multiple Modular VLIW Processors Based on FPGA", Journal of Electronic Imaging (SPIE), 16(2):110, April-June 2007.

Faraboschi , G. Brown and al., LX: A technologt platform for castomizable VLIW embedded processing, Proc. ofthe 27th annual Intemational Symposium of Computer Architecture, 2001 .

Fisher Joshep A, Paolo Faraboschi and Cliff Young, Embedded Computing: A VLIW Approach to Architecture, Elsevier Morgan Kauftran, second edition, 2005

Gelato .org. Impact advanced compiler technologt,2009.

HP Laboratories, Vq toolchain, www.hpl.hp.com/downloads/vex/, 2008. J.C Gyllenhaal, Wen mei Hwq and B.R.Rao. HMDES Yersion 2.0 Specification. Technical Report IMPACT-96-3, IMPACT Technical Repon,1996.

K. Parnell and R. Bryner., Comparing and Contrasting FPGA and Microprosessor System Design and Development,Xilirtx, July 2004. Saptono Debyo, Vincent Brost, Fan Yang and Eri Prasetyo, Design spoce explorationfor a castom vliw architecture: Direct photo printer hordware setting using vex compiler, ln Proc. of the 4th Lrternational Conference on SITIS 2008, November 2008

Subramanian Rajagopalan and Sreeranga P. Rajan and Sharad Malik, Modifiing a VLIW Compiler Framework to Implement an Optimizing Compiler for a Fixed Point DSP, In Proc of 5 th International Workshop on Software and Compiler for Embedded Systems,200l.

Texas Instrument, tms320c62xx CPU and Instruction Set Reference Guide, http

:i/www.ti.corr/

tel

Gambar

Gambar l.  perbandingan  kinerja  custom VLIW dengan  teknologi lainnya.
Gambar 3. Hubungan  antar informasi  pada HMDES 2.1.2 Deskripsi MDES untuk targat prosesor TI DSP
Tabel  I  :  Pengukuran ILP  berdasarkan  nilai  IPC pada kedua  kompilator.

Referensi

Dokumen terkait

Laboratorium Sistem Informasi dan Akuntansi Universitas Bina Nusantara, baik staf (Yuliana Lisanti, M.ITM.; I Gusti Made Karmawan, S.Kom.; Imas Halimah; Devyano Luhukay;

Kekurangan vitamin A dapat terjadi pada semua umur akan tetapi kekurangan yang disertai kelain pada mata umumnya terdapat pada anak berusia 6 bulan sampai 4 tahun (Sidarta,

Setiap orang, tanpa diskriminasi, berhak untuk memperoleh keadilan dengan mengajukan permohonan, pengaduan, dan gugatan, baik dalam perkara pidana, perdata, maupun

Dalam mendirikan sebuah usaha atau proyek perlu adanya Aspek AMDAL yang berkenaan dengan lingkungan hidup yang sangat penting untuk ditelaah sebelum suatu investasi atau

Berdasarkan tabulasi data yang diperoleh, hasil persentase perolehan motivasi peserta senam aerobik di Eristy Management Kota Semarang tahun 2013 adalah sebagai berikut :

Sesungguhnya tidak seorangpun tahu kapan seorang gadis akan mendapatkan datang bulannya yang pertama kali. Biasanya terjadi setelah payudara dan rambut kemaluan mulai tumbuh.

Pada tingkat negara dan pemerintahan, komponen layanan ini meliputi: menilai akses dan ketersediaan layanan kesehatan negara; bermitra dengan sektor publik, swasta, dan non-profit

Dari hasil pengamatan lapangan, kecepatan arus terbesar terjadi pada musim peralihan, dengan kecepatan maksimal mencapai 0,358 – 0,397 m/dt dengan arah dominan ke tenggara