Ketika komputer masih sederhana, terdapat dua cara mudah untuk mengukur kinerja komputer. Pertama, menggunakan parameter sistem itu sendiri misalnya laju detak prosesor atau jumlah instruksi yang dapat diproses tiap satuan waktu. Jumlah instruksi yang diproses dalam satuan waktu tertentu diekspresikan dalam 'satuan' MIPS (millions instruction per second). Ukuran ini menjadi tidak adil digunakan pada komputer yang menggunakan prosesor dengan arsitektur berbeda. Prosesor berarsitektur RISC misalnya, memerlukan lebih banyak instruksi untuk menjalankan suatu tugas (task) tertentu dibandingkan dengan prosesor berasitektur CISC. Dengan ukuran MIPS, prosesor RISC akan tampak bekerja jauh lebih cepat (menjalankan lebih banyak instruksi per satuan waktu) dibanding prosesor CISC meskipun lama waktu yang digunakan untuk menyelesaikan satu tugas bisa jadi sama.
Cara kedua adalah dengan menggunakan benchmark sintetis. Whetstone dan Dhrystone merupakan contoh benchmark sintetis yang banyak digunakan untuk mengukur kinerja komputer. Benchmark sintetis berupa program pendek yang dibuat menyerupai tingkah-laku program aplikasi yang ada. Melalui kajian mendalam terhadap berbagai program aplikasi yang ada, dibuat suatu program pendek yang merupakan gabungan dari berbagai komputasi matematis, kalang (loop), pemanggilan fungsi, dan sebagainya. Terhadap pengukuran dengan benchmark sintetis terdapat dua kelemahan. Selain keraguan apakah program yang disusun benar-benar mewakili program aplikasi yang sebenarnya, keraguan hasil pengukuran juga disebabkan oleh mudahnya teknik pengukuran ini dimanipulasi dengan melakukan optimisasi kompilator (Sharp dan Bacon, 1994:65).
Tulisan berikut ini akan mengulas salah satu benchmark yang banyak dipergunakan, yakni SPEC, yang dikembangkan oleh System Performance Evaluation Corporation. Uraian tentang benchmark SPEC ini dimaksudkan untuk menjelaskan cara pengukuran kinerja komputer dengan membandingkan waktu eksekusi yang diperlukan oleh suatu komputer untuk satu program tertentu dengan waktu eksekusi pada komputer rujukan. Pada bagian berikutnya diuraikan mengenai kelemahan pengukuran kinerja berbasis 'waktu eksekusi program' tersebut dan alternatif lain yang dapat dilakukan untuk memperbaiki pengukuran kinerja komputer tersebut.
SPEC95
Sebagai upaya untuk mendapatkan tolok-ukur baku agar dapat membandingkan kinerja berbagai sistem komputer, sekelompok perusahaan besar antara lain: DEC, Hewlett-Packard, IBM, Intel, dan Sun sepakat membentuk lembaga non-profit yang diberi nama System Performance Evaluation Corporation (Sharp dan Bacon, 1994:66; Reilly, 1995). Lembaga ini ditugasi untuk mengembangkan dan memberi dukungan terhadap pembakuan benchmark kinerja komputer.Sebelum membuat program untuk mengukur kinerja komputer, SPEC telah mempelajari sejumlah program yang umum dipakai, menganalisis algoritma dan bahasa mesinnya, menentukan cara mengukur kinerja komputer, dan menentukan rumusan untuk membuat rerata skor kinerja komputer dari skor-skor yang diperoleh masing-masing elemen benchmark. Benchmark SPEC terdiri atas dua kelompok program. Satu kelompok merupakan program-program yang dititik-beratkan pada operasi atas bilangan integer dan satu kelompok lainnya dititikberatkan pada operasi atas bilangan floating-point.
Perangkat benchmark pertama yang dibuat diperkenalkan pada tahun 1989, karenanya disebut SPEC89. Pada tahun 1992 dimunculkan versi baru, dan dengan demikian SPEC89 tdak digunakan lagi. SPEC92 terdiri atas 20 program yang terbagi menjadi dua kelompok, yakni untuk operasi bilangan integer dan untuk operasi bilangan floating-point. Saat ini, SPEC92 juga sudah tidak digunakan lagi karena telah dimunculkan perangkat benchmark baru yakni SPEC95. Pada SPEC95 ini, komputer rujukan yang digunakan sebagai pembanding berubah dari semula VAX-11/780 menjadi Sun SPARCstation 10/40. Dengan demikian, bila dikatakan skor SPECint95 adalah 5.0, maka berarti sistem yang diuji 5 kali lebih cepat dibanding Sun SPARCstation 10/40.
SPEC95, yang diperkenalkan pada bulan Agustus 1995, merupakan perangkat benchmark yang terdiri atas dua bagian, yakni CINT95 (ditulis dalam bahasa C) dan CFP95 (ditulis dalam bahasa Fortran). CINT95 merupakan bagian dari perangkat SPEC95 yang mengukur kinerja komputer terhadap operasi bilangan integer, yang diasumsikan mewakili program aplikasi bisnis. Bagian lain, yakni CFP95, mengukur kinerja komputer terhadap operasi bilangan floating-point yang diasumsikan mewakili program aplikasi ilmiah-numerik.
Tabel 1 Elemen-elemen CINT95
| | |
099.go | Program kecerdasan buatan, menjalankan program permainan Go melawan dirinya sendiri | 4600 |
124.m88ksim | Simulator cip mikroprosesor Motorola 88100, menjalankan program uji Dhrystone dan program uji memori | 1900 |
126.gcc | Melakukan kompilasi untuk bahasa mesin prosesor SPARC berbasis kompilator GNU C versi 2.5.3. | 1700 |
129.compress | Program pemampat (compress) dan pengurai (decompress) file teks sebesar 16 MB yang bekerja dalam-memori (in-memory), dengan metode pengkodean Limpel-Ziv adaptif | 1800 |
130.li | Interpreter bahasa LISP | 1900 |
132.ijpeg | Program pemampat dan pengurai citra (image) dengan berbagai parameter, yang bekerja dalam-memori. | 2400 |
134.perl | Melakukan manipulasi numerik dan teks (anagram dan pemfaktoran bilangan prima) | 1900 |
147.vortex | Membuat dan memanipulasi tiga basis data yang saling berkaitan | 2700 |
Tabel 2. Elemen-elemen CFP95
Nama Program | | |
101.tomcatv | Mewakili program bidang dinamika fluida/ translasi geometris. Membangkitkan sistem koordinat dua-dimensi pada domain geometris umum. | 3700 |
102.swim | Model perairan dangkal dengan 1024x1024 kisi | 8600 |
103.su2cor | Simulasi Monte Carlo, bidang fisika kuantum. Melakukan perhitungan massa partikel elementer berdasarkan teori Quark-Gluon | 1400 |
104.hydro2d | Bidang astrofisika, menyelesaikan persamaan hidrodinamik Navier Stokes untuk menghitung semburan galaktik | 2400 |
107.mgrid | Bidang elektromagnetis, memecahkan persoalan medan potensial 3 dimensi multikisi (multigrid) | 2500 |
110.applu | Bidang dinamika fluida/matematika, menyelesaikan sistem matriks dengan pivoting | 2200 |
125.turb3d | Simulasi turbulensi homogen isotropik dalam kubus | 4100 |
141.apsi | Pemecahan persoalan berkaitan dengan temperatur, angin, serta kecepatan dan distribusi polutan | 2100 |
145.fppp | Menyelesaikan derivasi multielektron , bidang kimia kuantum | 9600 |
146.wave5 | Penyelesaian persamaan Maxwell pada jaring Cartesian | 3000 |
Bencmark SPEC95 mengukur dan membandingkan kinerja komputer dalam tiga kategori pilihan:
- Kinerja terhadap bilangan integer versus floating point
- Kinerja dengan kompilasi agresif versus kompilasi konservatif
- Kecepatan versus throughput
Tabel 3. Pilihan 'Ukuran' Kinerja Komposit
Metode Kompilasi | Kecepatan | Throughput |
Kompilasi Agresif | SPECint95 SPECfp95 | SPECint_rate95 SPECfp_rate95 |
Kompilasi Konservatif | SPECint_base95 SPECfp_base95 | SPECint_rate_base95 SPECfp_rate_base95 |
Yang dimaksud ukuran komposit adalah bahwa skor indivual dihitung untuk tiap-tiap elemen program (8 elemen pada CINT95 dan 10 elemen pada CFP95) dalam CINT95 atau CFP95 dan hasilnya digunakan untuk menghitung ukuran komposit ini.
Untuk pengukuran kecepatan, setiap elemen benchmark memiliki SPECratio. SPECratio adalah referensi waktu SPEC dibagi dengan waktu-pelaksanaan (runtime) tiap-tiap elemen program pada sistem yang diukur.
Ukuran komposit kecepatan dapat dihitung sebagai berikut:
1. | SPECint95 | : | Rerata geometris dari 8 buah SPECratio (satu untuk tiap elemen program CINT95) bila masing-masing elemen program dikompilasi dengan optimisasi agresif. |
2. | SPECint_base95 | : | Rerata geometris dari 8 buah SPECratio (satu untuk tiap elemen program CINT95) bila masing-masing elemen program dikompilasi dengan optimisasi konservatif |
3. | SPECfp95 | : | Rerata geometris dari 10 rasio ternormalisasi (satu untuk tiap elemen program CFP95) bila masing-masing elemen program dikompilasi dengan optimisasi agresif. |
4. | SPECfp_base95 | : | Rerata geometris dari 10 rasio ternormalisasi (satu untuk tiap elemen program CFP95) bila masing-masing elemen program dikompilasi dengan optimisasi agresif. |
Untuk mendapatkan ukuran throughput atau laju eksekusi program, yang disebut juga 'metode kapasitas homogen' beberapa salinan elemen program tertentu dijalankan. Metode ini terutama cocok untuk sistem multiprosesor. Hasilnya, yang disebut laju SPEC (SPECrate) menggambarkan berapa banyak elemen program yang dapat dijalankan pada satu waktu tertentu. Dengan demikian laju SPEC menggambarkan kapasitas sistem untuk tugas-tugas yang sama karakteristiknya dengan program uji (Dixit dan Reilly, 1995).
Sama seperti ukuran kecepatan, SPEC mendefinisikan rerata ukuran laju sebagai berikut:
- SPECint_rate95 = Rerata geometris dari 8 buah SPECrate ternormalisasi (satu untuk tiap elemen program CINT95) bila masing-masing elemen program dikompilasi dengan optimisasi agresif.
- SPECint_rate_base95 = Rerata geometris dari 8 buah SPECrate ternormalisasi (satu untuk tiap elemen program CINT95) bila masing-masing elemen program dikompilasi dengan optimisasi konservatif.
- SPECfp_rate95 = Rerata geometris dari 10 buah SPECrate ternormalisasi (satu untuk tiap elemen program CFP95) bila masing-masing elemen program dikompilasi dengan optimisasi agresif.
- SPECfp_rate_base95 = Rerata geometris dari 8 buah SPECrate ternormalisasi (satu untuk tiap elemen program CINT95) bila masing-masing elemen program dikompilasi dengan optimisasi konservatif.
Benchmark lainnya
Selain SPEC95, berbagai benchmark dikembangkan untuk mengukur kinerja komputer. Berikut ini disajikan beberapa contoh beserta deskripsi singkatnya untuk memberikan gambaran mengenai perbedaan masing-masing.
Whetstone merupakan benchmark sintetik yang dikembangkan oleh Curnow dan Wichman pada tahun 1976 (Sharp dan Bacon, 1994: 68). Benchmark ini dimaksudkan untuk mengukur kinerja komputer dalam mengolah bilangan floating point dan digunakan untuk membandingkan arsitektur maupun kompilator teroptimisasi yang dijalankannya. Program semula dibuat dalam bahasa Algol dengan kompilator Algol 60 yang menterjemahkannya menjadi instruksi untuk mesin Whetstone imajiner (Sill, 1996). Kelemahan benchmark Whetstone adalah kecilnya ukuran modul/program benchmark sehingga sistem memori di luar cache tidak teruji, dan dengan optimisasi kompilator dengan mudah didapatkan skor benchmark tinggi tanpa mengubah sistem yang diuji (Sill, 1996).
Dhrystone juga merupakan benchmark sintetik yang dikembangkan oleh Reinhold Weicker pada awal tahun 1980-an dan difokuskan untuk mengukur kinerja komputer atas bilangan integer dan string (Sharp dan Bacon, 1994:68). Program asli ditulis dalam bahasa Ada, dan kemudian diterjemahkan ke dalam bahasa-bahasa lain. Sama seperti Whetstone, program benchmark Dhrystone memiliki ukuran yang terlalu kecil (sekitar 1,5 KB) sehingga tidak dapat menguji sistem di luar cache. Optimisasi kompilator juga dapat dilakukan untuk mempertinggi skor perolehan (Sill, 1996).
Linpack yang dikembangkan oleh Jack Dongarra, kernelnya dikembangkan dari rutin program aplikasi aljabar linier (Sharp dan Bacon, 1994:68; Sill, 1996). Semula ditulis dan digunakan dalam lingkungan bahasa program Fortran namun tersedia juga versi bahasa C. Sebagian besar waktu uji merupakan waktu eksekusi subrutin yang menjalankan operasi matriks y(i) = y(i) + a * x(i). Versi standar bekerja dengan matriks ukuran 100x100, tetapi juga tersedia versi dengan ukuran matriks 300x300 dan 1000x100 dengan aturan optimisasi yang berbeda. Kelemahannya, program hanya mewakili tipe komputasi matriks yang memang banyak digunakan dalam bidang bidang sains (Sill, 1996).
NAS Parallel Benchmark (NPB), yang dikembangkan oleh peneliti di NAS, yakni cabang dari NASA Ames Research Lab, untuk mengukur kinerja komputer paralel. NPB dikembangkan khusus untuk mengukur kinerja komputer paralel, yang memerlukan penulisan ulang program agar dapat secara efektif dan efisien membagi beban komputasi di antara prosesor-prosesornya (Sharp dan Bacon, 1994:68).
Para peneliti di Universitas Illinois, yang telah lama bekerja dengan superkomputer, tidak puas dengan berbagai teknik yang dipakai dalam mengembangkan berbagai benchmark. Mereka mengembangkan benchmark yang disebut Perfect Club, yang memiliki pendekatan pengukuran mirip dengan SPEC. Perfect Club merupakan gabungan dari aplikasi-aplikasi riil yang disumbangkan oleh kelompok-kelompok peminat komputasi dan diorganisasi sedemikian rupa sehingga menjadi satu benchmark. Benchmark Perfect Club terutama mengukur kinerja atas bilangan floating-point dan biasanya dieksekusi pada superkomputer. Tujuan utama proyek Perfect Club adalah mengkarakterisasi program aplikasi dalam hal perilaku algoritmanya sehingga memungkinkan pemakai memperoleh prediksi kinerja yang diharapkan untuk program aplikasi yang dikembangkannya (Sharp dan Bacon, 1994:68).
Benchmark iCOMP dikembangkan oleh Intel untuk membandingkan kinerja prosesor-prosesor yang ada di pasaran. Ketika prosesor generasi 486 diperkenalkan, di pasaran muncul berbagai versi mulai 486SX, 486DX2, dan sebagainya. Agar calon pembeli memiliki gambaran ringkas kinerja prosesor, Intel mengembangan angka indeks yang merupakan angka kinerja prosesor dibandingkan dengan kinerja prosesor rujukan. Benchmark ini khusus mengukur kinerja prosesor dan tidak mencerminkan kinerja komputer secara keseluruhan (Sharp dan Bacon, 1994:68). Popularitas iCOMP terutama karena benchmark ini hampir selalu menjadi ukuran kinerja prosesor-prosesor Intel dalam iklan-iklannya (setidaknya sampai generasi Pentium).
Kritik terhadap Benchmark
Pengukuran kinerja komputer dengan benchmark yang ada saat ini banyak dikritik karena seperti orang buta meraba gajah. Bergantung pada bagian yang dipegang, gajah bisa didefinisikan sebagai tinggi seperti pohon kelapa, panjang dan kecil seperti ular, atau lebar dan tipis seperti kipas (Gustafson dan Todi, 1998). Benchmark yang ada cenderung mengukur satu aspek dari kinerja komputer dan hasilnya digunakan untuk menggeneralisasi kinerja keseluruhan.
Menyadari masalah itu, benchmark Perfect Club dan SPEC mengembangkan apa yang disebut suite aplikasi (yakni sekumpulan aplikasi terdiri atas elemen-elemen program yang masing-masing mengukur berbagai aspek perilaku sistem agar diperoleh gambaran sistem lebih lengkap). Suite semacam itu biasanya sulit dipangkalkan (porting) ke komputer lain, terutama komputer paralel, dan bila berhasil dipangkalkan diperlukan waktu berjam-jam untuk mengeksekusinya (Gustafson dan Todi, 1998).
Menurut Gustafson dan Todi (1998) aplikasi semacam itu tetaplah hanya mengukur satu titik sampel dari kinerja komputer sementara yang diperlukan adalah mengukur seluruh rentang kinerja komputer. Benchmark-benchmark tersebut memiliki satu karakteristik yang sama, yakni ukuran masalahnya dibuat tetap. Komputer-komputer dibandingkan dari segi berapa lama diperlukan waktu untuk menyelesaikan masalah tersebut. Karena benchmark harus dapat dieksekusi pada banyak jenis komputer, maka ukuran masalah dipilih sedemikian rupa sehingga diharapkan semua komputer sasaran uji dapat menjalankan benchmark dengan baik. Ukuran masalah pada NAS Parallel Benchmark misalnya, disesuaikan dengan kapasitas komputer Cray X-MP yang ada di NASA Ames Research Center meskipun banyak komputer paralel yang memiliki lebih banyak memeri dan dirancang untuk masalah-masalah yang jauh lebih besar. Meskipun para pengembang NAS Parallel Benchmark telah membuat lima ukuran masalah yang berbeda tetapi tetap tidak menemukan cara untuk membandingkan komputer dengan kapasitas memori yang sangat berbeda. Oleh karena itulah, dukungan terhadap penggunaan NAS Parallel Benchmark makin lama makin surut (Gustafson dan Todi, 1998).
McMahon, yang merancang benchmark Livermore Loop menunjukkan upaya awal untuk mengeksplorasi penggunaan ukuran masalah yang berbeda dalam satu benchmark. Panjang vektor diubah-ubah pada suatu rentang tertentu untuk merepresentasikan berbagai rejim (konfigurasi dan kapasitas) memori sistem komputer. Hanya saja rentang variasi panjang vektor tidak cukup besar untuk mengakomodasi rejim memori (untuk tahun 1997 saja rasio ukuran yang cukup representatif adalah 1.000.000 : 1) dan benchmark Livermore Loop dinyatakan dengan satu skor tunggal sehingga meniadakan perbedaan struktur uji yang dilakukan.
Benchmark Whetstone, yang dibuat oleh Curnow dan Wichman, juga dimaksudkan untuk menghindari sindrom 'orang buta dan gajah' dengan memberikan bobot yang dapat diatur untuk aspek-aspek komputasi yang berbeda, misalnya matematika bilangan integer, pemanggilan subrutin, fungsi-fungsi khusus, percabangan, dan sebagainya (Gustafson dan Todi, 1998). Pengguna benchmark ini dapat memilih sendiri bobot yang dipakai untuk aplikasi target, mengatur bobot benchmark, dan menggunakan skor total sebagai prediktor kinerja komputer tersebut. Meskipun demikian, benchmark Whetstone dengan bobot yang telah disediakan di dalamnya sebagai bobot default lebih sering digunakan sebagai perbandingan.
Hal lain yang tidak masuk dalam perhitungan para perancang benchmark adalah fakta bahwa menurut hukum Moore, kinerja komputer bertambah sebesar 60% setiap tahun. Semua benchmark mendasarkan diri pada masalah berukuran tetap (fixed-size problem) sehingga relatif terhadap kinerja yang terus meningkat, masalah yang diujikan sebagai pengukur kinerja menjadi sangat kecil dalam beberapa tahun kemudian. Benchmark LINPACK, misalnya, mulai dengan menentukan bahwa ukuran matriks harus 100x100. Ketika kinerja komputer bertambah besar dan penghitungan matriks berukuran 100x100 terselesaikan lebih cepat dari waktu yang diperlukan pemrogram untuk menekan tombol ENTER, ukuran masalah diperbesar dengan matriks 300x300 dan kemudian 1000x1000. Bahkan selanjutnya perancang LINPACK mengijinkan versi 'sebesar yang dapat ditampung oleh memori'.
Meski LINPACK berupaya melakukan penskalaan ukuran masalah terhadap peningkatan kinerja, ada hal lain yang juga perlu diperhatikan. Ukuran memori pada sistem komputer meningkat 4 kali lipat setiap 3 tahun. Jumlah operasi yang dijalankan pada sistem komputer meningkat dengan faktor 64. Bila kecepatan pemrosesan juga dianggap mengikuti hukum Moore dengan peningkatan sebesar 4 kali, maka berarti waktu yang diperlukan untuk menjalankan program 'LINPACK terskala' tersebut meningkat dengan faktor 16. Dengan kondisi seperti itu, 'LINPACK terskala' praktis sama dengan LINPACK berukuran tetap, relatif terhadap peningkatan instrinsik sistem komputer tersebut di atas. Satu hal yang pasti adalah bahwa pengukuran kinerja komputer sebenarnya ditentukan oleh batas waktu yang dapat ditolerir manusia untuk menunggu hasil eksekusi program pengukur, dan ini merupakan batas ukuran masalah yang dapat diberikan kepada komputer sebagai penguji kinerja.
Mengembangkan benchmark tanpa memperhitungkan laju peningkatan kinerja dapat diibaratkan mematok harga barang tanpa memperhitungkan laju inflasi (dan perlu diingat, 'inflasi' kinerja komputer adalah 60% pertahun). Ketika LINPACK petama kali digunakan, waktu yang diperlukan dengan matriks 100x100 dikumpulkan dari berbagai sistem komputer yang ada di berbagai instutusi dan dilaporkan secara rutin. Pada taraf presisi 32 bit, matriks 100x100 tersebut hanya memerlukan 40.000 byte memori dan 670.000 operasi floating-point.Komputer VAX-11/780 memerlukan beberapa detik untuk menjalankan program tersebut - cukup untuk memberi kesempatan manusia melakukan pengukuran dengan cermat. Komputer CRAY Y-MP8/832 hanya memerlukan waktu eksekusi 1/300 detik, jauh lebih cepat dari kemampuan monitor menyegarkan (to refresh) tampilan untuk memberitahukan bahwa proses komputasi telah selesai (Gustafson, dkk, 1996). Bahkan dengan taraf presisi 64 bit, CRAY hanya memerlukan 1/30.000 dari kapasitas memorinya untuk menyelesaikan persoalan itu. Berikutnya, LINPACK dikembangkan dengan matriks 300x300, kemudian 1000x1000. Variasi taraf presisi dan optimisasi yang diijinkan menyebabkan skor benchmark LINPACK menjadi relatif, bergantung pada persoalan dan taraf presisi yang digunakan saat pengujian.
Benchmark dengan Pendekatan Lain
Sebagai upaya untuk mengembangkan benchmark yang lebih baik, peneliti di Ames Laboratory merancang program yang disebut sebagai SLALOM (The Scalable, Language-independent, Ames Laboratory One-minute Measurement). Benchmark SLALOM mengukur kinerja komputer dengan pendekatan waktu-tetap (fixed-time), bukan ukuran-masalah tetap (fixed-size problem). Dengan prinsip waktu-tetap, dimungkinkan membandingkan berbagai jenis komputer, dari komputer personal sampai komputer paralel berkemampuan besar. SLALOM, yang secara otomatis menyesuaikan dengan daya komputasi (computing power) yang ada dan memperbaiki kekurangan berbagai benchmark sebelumnya, memiliki sifat-sifat: sangat terskala, memecahkan persoalan riil, memperhitungkan juga waktu yang diperlukan untuk unit masukan dan keluaran, dan dapat dijalankan pada komputer paralel serta menggunakan berbagai bahasa yang ada (Gustafson, dkk, 1996).
Meskipun dirancang untuk memanfaatkan memori sesuai dengan kecepatan komputer, SLALOM tidak dapat dijalankan selama satu menit (waktu yang diperlukan untuk pengukuran) pada komputer yang kapasitas memorinya relatif kurang terhadap kecepatannya. Akibatnya, komputer dengan kapasitas memori kecil tidak dapat diukur kinerjanya dengan SLALOM.
Benchmark dengan pendekatan lain juga dibuat oleh peneliti di Ames Laboratory, dikenal dengan nama HINT (Hierarchial INTegration). Benchmark ini menghasilkan satuan ukuran yang disebut QUIPS (Quality Improvement Per Second) dan tidak menggunakan ukuran-masalah tetap ataupun waktu-tetap. HINT dikembangkan berdasarkan benchmark SLALOM tetapi bekerja lebih cepat. Bedanya, HINT tidak mematok ukuran masalah (problem size) maupun waktu komputasi. QUIPS merupakan satuan yang digunakan untuk mengukur banyaknya usaha yang dilakukan komputer pada rentang waktu tertentu. Gustafson, peneliti yang mengembangkan HINT, tidak menginginkan waktu yang terlalu singkat untuk melakukan pengukuran karena kebanyakan komputer bekerja sangat cepat pada awalnya, lalu mulai menurun kecepatannya setelah banyak terjadi kemelesetan (miss) cache dan mulai menggunakan memori utama atau bahkan harus mengakses data pada harddisk (Gustafson dan Snell, 1997).
Meskipun belum sepopuler benchmark lain, misalnya SPEC95, HINT diklaim sebagai benchmark yang memungkinkan pembandingan yang adil terhadap perbedaan-perbedaan ekstrim dalam hal arsitektur komputer, kineja absolut, kapasitas memori, dan taraf presisi komputasi. HINT merupakan perbaikan dari SLALOM dalam hal linieritas (kualitas penyelesaian masalah, pemakaian memori, dan banyaknya operasi, semuanya proporsional), mudah dikonversi ke komputer dengan arsitektur berbeda, serta menyatukan taraf presisi dan ukuran memori ke dalam satu kinerja. Sampai saat ini HINT masih belum banyak diuji dan belum cukup populer untuk digunakan sebagai tolok-ukur kinerja komputer universal.
Penutup
Perancangan pengukur kinerja komputer yang universal semakin sulit dilakukan akibat semakin bervariasinya arsitektur komputer, konfigurasi dan kapasitas memori, taraf presisi sistem, maupun teknik optimisasi kompilator. Berbagai pendekatan ilmiah dilakukan dalam upaya merancang benchmark yang memperhitungkan semua aspek di atas, tetapi tetap mudah digunakan. Sampai saat ini, pemakai sendirilah yang harus menentukan benchmark pilihannya, sekedar untuk mendapatkan prediksi kinerja komputer bila diberi beban kerja sesuai dengan pemakaian yang sebenarnya. Dengan tetap memperhatikan 'kelemahan' benchmark yang dipakai, setidaknya dapat diperoleh gambaran awal kinerja komputer atas beban-kerja yang akan diberikan kepadanya.
Daftar Pustaka
- Gustafson, John, dkk. 1996. The Design of a Scalable, Fixed-Time Computer Benchmark. URL: http://www.scl.ameslab.gov/ Publications/ DesignBenchmark/DesignBenchmark.html . Download tanggal 21 Mei 1999.
- Sharp, Oliver dan David F. Bacon . 1994. Measure for Measure. Byte, October 1994. USA: McGraw-Hill Inc.
- Reilly, Jeff . 1995. SPEC Describes SPEC95 Products And Benchmarks. URL : http://www.spec.org/osg/news/ cpu95descr.html . Download tanggal 20 Maret 1996.
- Gustafson, John L. dan Rajat Todi. 1998 . Conventional Benchmarks as a Sample of the Performance Spectrum. URL: http://www.scl.ameslab.gov/Publications/HICSS98/ HICSS98.html . Download tanggal 21 Mei 1999.
- Gustafson, John L. dan Quinn O. Snell. 1997. HINT: A New Way To Measure Computer Performance. URL: http://www.scl.ameslab.gov/Publications/HINT/ ComputerPerformance.html. Download tanggal 22 Mei 1999.
- Sill, Dave. 1996. comp.benchmarks Frequently Asked Questions, With Answers Version 1.0. URL : ftp://ftp.nosc.mil/pub/aburto/ comp.benchmark.faq. Download tanggal 22 Mei 1999.
- Dixit, Kaivalya dan Jeff Reilly. 1995. SPEC95 Questions and Answers. URL: http://netlib2.cs.utk.edu/html/PDStop.html. Download tanggal 8 September 1996
- Reilly, Jeff .1995. SPEC Discusses the History & Reasoning Behind SPEC95. URL : http://netlib2.cs.utk.edu/html/PDStop.html. Download tanggal 8 September 1996
0 Komentar