APLIKASI TEKNOLOGI GREEN COMPUTING MELALUI OPTIMALISASI KINERJA KOMPUTER Hidayatulah Himawan Jurusan Teknik Infrmatika UPN Veteran Ygyakarta Jl. Babarsari 2 Tambakbayan 55281 Telp (0274) 485323 Email : if.iwan@gmail.cm Abstract Green Cmputing which is a cncept f using technlgy t becme mre practical, efficient and cst-efficient in energy use, becmes a cncept which is being develped at this time. One methd that can be analyzed and develped is the use f a single prcessr n each cmputer, but has a perfrmance that culd rival the use f multiple prcessrs in rder t get better perfrmance. Besides ec-friendly principles als becme an integral part f the develpment f this technlgy. S ptimizing the perfrmance f cmputers using a single prcessr f chice in rder t ptimize the use f technlgy in tday. Keywrds : Bit Array, Prcessr, Prime Number Green Cmputing yang merupakan suatu knsep penggunaan teknlgi agar menjadi lebih praktis, efisien dan hemat dalam penggunaan energi, menjadi suatu knsep yang terus dikembangkan pada saat ini. Salah satu metde yang dapat dianalisa dan dikembangkan adalah penggunaan prcessr tunggal pada setiap kmputer, namun memiliki kinerja yang dapat menyamai penggunaan prcessr ganda agar kinerja menjadi lebih baik. Selain itu prinsip ramah lingkungan juga menjadi bagian yang tidak terpisahkan dari pengembangan teknlgi ini. Maka ptimalisasi kinerja kmputer menggunakan prcessr tunggal menjadi pilihan agar dapat diptimalkan dalam penggunaan teknlgi di saat ini. Kata Kunci : Bit Array, Prcessr, Prime Number 1. Pendahuluan Green cmputing yang merupakan suatu knsep penggunaan teknlgi agar menjadi lebih ramah lingkungan, menjadi suatu permasalahan bersama di masa yang akan datang. Penggunaan teknlgi yang lebih ramah lingkungan menjadi perhatian di seluruh bagian teknlgi. Mulai dari PC (persnal Cmputer), prcessr, memry, media penyimpanan dan segalanya. Salah satu knsep yang dapat dikembangkan adalah tentang bilangan prima. Dimana bilangan prima telah menjadi salah satu bahasan pkk dari riset-riset yang dilakukan saat ini. Dari riset-riset yang telah dilakukan sebelumnya, ditemukan beberapa teknik dalam pencarian apakah sebuah bilangan adalah bilangan prima atau bukan, seperti Fermat Little Test. Namun dalam hal pencarian pla deret bilangan prima tidaklah semudah itu. Definisi bilangan prima yang sederhana tersebut tidak menjamin bahwa bilangan prima muncul dengan pla-pla yang teratur, bahkan sebaliknya; tidak ada yang dapat memprediksi kemunculan bilangan prima yang selanjutnya (Jansen, 2007). Generatr bilangan prima merupakan suatu tl, yang dapat membangkitkan pla-pla urutan bilangan prima yang teratur, struktur bit-array merupakan metda pengelmpkan variable-variabel yang berisi kumpulan data dengan setiap elemen datanya bertipe sama, digunakan didalam penyimpanan urutan bilangan yang dihasilkan. Bilangan prima sangat bermanfaat untuk kegunaan-kegunaan antara lain dapat diterapkan sebagai basis dari penciptaan algritma kriptgrafi kunci public, bagian yang penting dari sistem kriptgrafi ini adalah faktrisasi bilangan yang sangat besar menjadi factr bilangan primanya, permasalahan yang masih ada yaitu penentuan deret bilangan prima yang skalanya sangat besar. Penggunaan serial prsesr didalam pencarian deret bilangan prima yang sekalanya amat besar kurang efisien mengingat diperlukannya waktu kmputasi yang cukup panjang, begitu pula penggunaan prsesr jamak di dalam pencarian deret bilangan prima akan menyangkut kepada masalah harga dan membutuhkan perangkat lunak yang baru. Sehingga dengan cara Teknlgi Green (Hidayatulah H)
34 TELEMATIKA Vl. 7, N. 1, JULI 2010 :33 40 menggunakan struktur bit-array diharapkan kesulitan didalam mencari pla-pla urutan bilangan prima dapat diatasi meskipun tanpa menggunakan prsesr jamak sekalipun. 2. Pemanfaatan Green Cmputing Tidak heran bahwa regulasi metde green cmputing ini sudah lahir di beberapa negara maju seperti Amerika yang mengeluarkan prgram energy star tahun 1992. Kemudian di Erpa ada Swedish Cnfederatin f Prfessinal Emplyees yang menyertifikasi prduk peralatan kmputer dan perkantran agar sesuai standard aturan baku. Lalu kita mengenal adanya RHS (Restrictin f Hazardus Substances), yang biasa kita temui dalam suatu prduk yang artinya prduk tsb menggunakan bahan material yang telah memenuhi syarat yang berlaku. Beberapa metde pendekatan Green Cmputing sehingga lebih ramah lingkungan dalam sistem kmputasi berikut ini: 1. Pemanfaatan energi alternatif Dengan menggunakan sumber energi alternatif lain sistem kmputasi dapat digerakkan, misalnya menggunakan energi nuklir, hydrelectric, kincir angin, dsb. 2. Penggunaan Sistem Teknlgi Virtualisasi Memang sudah jamannya di saat sekarang kita menggunakan sistem teknlgi virtualisasi. Sistem ini memungkinkan kita dapat menjalankan suatu prses di dua atau lebih lgical cmputer didalam satu unit hardware pemrses utama atau CPU. Jadi dengan sistem virtualisasi maka serang Administratr akan lebih mudah menggabungkan beberapa sistem CPU fisik ke dalam bentuk Virtual Machine yang jauh lebih handal. Tentunya hal ini dapat mengurangi jumlah keseluruhan sumber daya yang ada. 3. Pengaturan penggunaan sumber daya Kmputasi mdern saat ini sudah dilengkapi adanya fasilitas Advance Cnfiguratin and Pwer Interface, yang memungkinkan suatu sistem perasi mengendalikan secara langsung faktr pwer saving dari hardware kmputer tsb. Misal Anda dapat mengatur mnitr atau harddisk secara tmatis akan idle (dalam keadaan tidak ada aktivitas). Disamping itu Anda dapat mengatur sistem pwer management tsb didalam BIOS kmputer dan fitur-fitur lain dalam masing-masing prduk. 4. Penggunaan Hardware yang Lw Pwer Saat ini sudah banyak prduk-prduk kmputer yang menggunakan sumber daya yang rendah. Namun hal ini akan tidak sesuai bila Anda menggunakan kmputer untuk game, vide editing, dan aplikasi-aplikasi yang membutuhkan resurces yang besar. Apabila Anda hanya membutuhkan untuk sistem ffice dan sekedar brwsing di internet, kmputer dengan hardware yang minimalis ini sudah lebih dari cukup dan tentunya bisa menghemat budget Anda. 5. Pemanfaatan sistem Daur Ulang Bila kmputer sudah usang namun masih dapat dimanfaatkan kembali biasanya sparepart yang masih berfungsi mungkin dapat dipakai sebagai sumber bagi kmputer lain. Sedangkan kal sudah rusak maka sparepart yang ada dapat di daur ulang kembali. Biasanya ini terjadi di negara-negara maju seperti Amerika dan Erpa. 6. Penggunaan Sistem Mbilitas Infrastruktur yang ada seperti saluran kabel telpn mungkin saat ini dapat berkurang berkat adanya invasi dalam teknlgi infrmasi dimana kita sudah dapat melakukan kmunikasi menggunakan VOIP (Vice Over Internet Prtcl). Secara tidak langsung kita sudah mengurangi penggunaan bahanbahan dari lgam yang berbahaya dari struktur kabel tsb. 3. Algritma Penelitian Disini akan dibahas jenis algritma yang akan digunakan sebagai pengembangan dari Green Cmputing. Yaitu : 3.1 Algritma Sieve Of Eratsthenes Eratsthenes (276-194 SM) adalah petugas perpustakaan ketiga dari perpustakaan terkenal di Alexandria dan dia adalah serang sarjana yang sangat hebat. Erastthenes
TELEMATIKA ISSN 1829-667X 35 dikenang dengan pengukurannya terhadap keliling bumi dengan memperkirakan jarak antara bumi dengan matahari dan bulan. Algritma Sieve Of Eratsthenes adalah sebuah algritma klasik untuk menemukan seluruh bilangan prima sampai ke sebuah N yang ditentukan. Mulai dengan array f integer yang belum dicret dari 2 ke N. Integer pertama yang belum dicret yaitu 2, adalah bilangan prima pertama. Cret seluruh kelipatan dari bilangan prima ini. Ulangi pada integer selanjutnya yang belum dicret. Algritma Sieve f Eratsthenes ini digunakan penulis sebagai dasar untuk membuat Generatr bilangan prima dengan menggunakan struktur bit array. Urutan langkah dari Algritma Sieve f Eratsthenes dapat dilihat pada penjelasan berikut ini : 1. Buat sebuah list bilangan dari 2 sampai sebuah bilangan terbesar yang kita nyatakan dengan n. 2. Eliminasi atau hilangkan dari list semua bilangan kelipatan 2. 3. Angka selanjutnya yang belum dihilangkan adalah bilangan prima. 4. Eliminasi atau hilangkan dari list semua bilangan yang merupakan kelipatan dari angka pada langkah sebelumnya. 5. Ulangi langkah 3 dan langkah 4 sampai angka yang lebih besar dari angka yang tersisa setelah langkah 5 adalah bilangan prima. Algritma ini mempunyai kmpleksitas waktu O (n lg lg n). Versi algritma ini dengan ptimasi prses, seperti wheel factrizatin, mempunyai kmpleksitas waktu O(n). Sebagai cnth, berikut adalah array pada awalnya: 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Karena 2 belum dicret, maka 2 adalah bilangan prima pertama kita. Kita cret seluruh kelipatan 2, yaitu 4, 6, 8, 10, 12, dst. 2 3 5 7 9 11 13 15 17 19 21 23 25 27... Integer selanjutnya yang belum dicret adalah 3, maka 3 adalah prima dan kita cret seluruh kelipatan 3, seperti 6, 9. 12, dst. 2 3 5 7 11 13 17 19 23 25... 5 adalah bilangan prima selanjutnya dan kita mencret seluruh kelipatan 5. Satu-satunya bilangan yang dicret dalam range ini adalah 25, yaitu 2 3 5 7 11 13 17 19 23... 3.2 Algritma Sieve f Atkins Dalam penelitian ini dipilih algritma Sieve f Atkins sebagai Algritma pembanding. Karena algritma Sieve f Atkin adalah sebuah algritma yang cepat dan mdern untuk mendapatkan seluruh bilangan prima sampai pada suatu batas integer yang telah ditentukan. Algritma ini adalah versi ptimasi dari algritma kun Sieve f Eratsthenes. Sieve f Atkin melakukan dahulu beberapa pekerjaan persiapan dan kemudian mencret kelipatan dari kuadrat bilangan prima, bukannya kelipatan bilangan prima. Algritma ini diciptakan leh A. O. L. Atkin dan Daniel J. Bernstein pada tahun 2004. Pada algritma ini, suatu bilangan dapat disebut bilangan prima jika bilangan tersebut memenuhi beberapa persyaratan, yaitu: 1. Persamaan berikut ini harus memiliki jumlah slusi n yang ganjil: a. 4x 2 + y 2 = n dimana n md 4 =1 b. 3x 2 + y 2 = n dimana n md 6 =1 c. 4x 2 - y 2 = n dimana n md 12 =11 2. Bilangan tersebut haruslah square-free. Sebuah bilangan yang disebut square-free adalah bilangan yang tidak memiliki faktr prima lebih dari sekali. (Cnth: 20=2*2*5, 20 memiliki 2 buah faktr 2 sehingga bukan merupakan square-free. 21=7*3, 21 tidak memiliki faktr yang dbel dan merupakan bilangan yang square free). Cara implementasi dari algritma ini adalah: 1. Ciptakan sebuah array f Blean dengan ukuran n dan seluruh elemen diset menjadi false 2. Ulangi melalui setiap nilai valid untuk x dan y, dan balikkan elemen dalam psisi hasil perhitungan (Cnth: x = 3, y = 5, 4x 2 + y 2 = 61 maka apapun nilai elemen ke 61 dari array f Blean tadi harus dibalik). 3. Langkah terakhir adalah dengan mencret semua bilangan yang tidak square-free. Hal ini dapat dilakukan dengan memulai pada awal dari array f Blean, dan jika elemen pertama bernilai true (yang berarti bilangan tersebut prima) maka set seluruh elemen yang lain yang merupakan kelipatan dari kuadrat bilangan tersebut menjadi false. Lakukan untuk semua elemen kurang dari akar dari batas angka. 4. Elemen yang berisi nilai true mewakilkan bilangan prima. Teknlgi Green (Hidayatulah H)
36 TELEMATIKA Vl. 7, N. 1, JULI 2010 :33 40 4. Hasil dan Pembahasan 4.1 Surce cde didalam PHP Pada gambar 1 di bawah ini adalah cnth penerapan algritma di atas dalam bahasa pemrgraman PHP. Script ini sudah ditest untuk menampilkan bilangan prima dibawah 1.000.000 dan berhasil menampilkannya dalam waktu 3 detik. <?php functin bilangan_prima($limit) $prima = array(); fr ($i=2; $i<=$limit; $i++) $prima[$i] = true; $akarlimit = (int)sqrt($limit); fr ($i=2; $i<=$akarlimit; $i++) if ($prima[$i]) fr ($j=$i*$i; $j<=$limit; $j+=$i) $prima[$j] = false; $i = 0; freach ($prima as $bilangan=>$status) if ($status) ech "$bilangan ";$i++; ech "Jumlahnya:". $i; $start=mktime(); bilangan_prima(1000000); //menampilkan bilangan prima dari 1-1 juta $finish=mktime(); $result=$finish-$start; ech "Time: $result secnds";?> Gambar 1. Script PHP penerapan algritma pada Bilangan Prima 4.2. Algritma Sieve Of Eratsthenes Algritma yang digunakan didalam menentukan deret bilangan prima sampai ke n bilangan yang ditentukan adalah Algritma Sieve Of Eratsthenes, disajikan dalam Pseudcde dibawah ini : // tentukan batas limit 1.000.000 // set semua bilangan dengan true is_prime (i) true, i [2, limit] fr n in [2, limit]: if is_prime (n) : is_prime (i) false, i n 2, n 2 +n, n 2 +2n,, limit fr n in [2, limit] : if Gambar is_prime 2. (n) Algritma : print Sieve n f Eratsthenes Dari desain pseudcde di atas, maka dapat kita terapkan ke dalam bahasa java seperti prgram di bawah ini :
TELEMATIKA ISSN 1829-667X 37 Class primaeratsthenes public static vid main (strings args [] ) int m = 10000;//batas blean [] prima=new blean [m+1]; fr (int i = 0; i <= m; i++) prima [i] = true; prima[0]=prima[1]=false; duble akarn=math.sqrt(m); Fr (int i=2; i<=akarn; i++) if (prima[i]) fr (int j=i*i; j<=m; j++) if ((j%i)==0) Prima[j]=false; fr (int i=0; i<=m; i++) if (prima[i]&&(i>=n)) system.ut.println (i + \n ); Gambar 3. Algritma Sieve f Eratsthenes di dalam Bahasa Java Dengan kde implementasi java di atas, maka kita akan mendapatkan suatu kecepatan dari algritma untuk mendapatkan bilangan prima dengan suatu batas yang telah kita tentukan sebelumnya.berikut perbandingan bilangan yang dapat kita lihat antara algritma Eratsthenes dengan algritma Brue Frce. Teknlgi Green (Hidayatulah H)
38 TELEMATIKA Vl. 7, N. 1, JULI 2010 :33 40 Gambar 4. Perbandingan Algritma Sieve f Eratsthenes dengan Algritma Brute Frce (naif) 4.3 Eksekusi Prgram Eksekusi generatr bilangan prima dengan menggunakan struktur bit array yang menggunakan algritma Sieve f Eratsthenes menggunakan tl Dev-C++, dapat dilihat pada Gambar 5. Gambar 5. Tampilan eksekusi prgram Prgram yang sudah di Cmpile dan sudah tidak ada kesalahan, selanjutnya prgram di Run. Tampilan setelah prgram di Run terlihat pada gambar 6. Didalam cnth kasus ini input bilangan dimasukan angka 100.000. tampak terlihat lama waktu eksekusi selama 2.00 detik.
TELEMATIKA ISSN 1829-667X 39 Gambar 6. Tampilan Setelah di run Prgram generatr bilangan prima tanpa struktur bit array menggunakan algritma Sieve f Atkins dilakukan pengecekan dengan memakai tl Dev-C++, dapat dilihat pada Gambar 7. Gambar 7. Tampilan Eksekusi Prgram Teknlgi Green (Hidayatulah H)
40 TELEMATIKA Vl. 7, N. 1, JULI 2010 :33 40 5. Kesimpulan Kesimpulan yang dapat diambil dari hasil percbaan dan analisa adalah : 1. Bilangan prima adalah salah satu metde yang dapat dikembangkan untuk mengahsilkan suatu prduk teknlgi yang memiliki knsep ramah lingkungan (Green Cmputing). 2. Teknlgi green cmputing dapat dikembangkan ke dalam berbagai macam aspek teknlgi. Sehingga teknlgi yang dihasilkan akan menjadi lebih baik dan memiliki peran serta kemampuan yang lebih ptimal. 3. Dengan cara menggunakan struktur bit-array kesulitan didalam mencari pla-pla urutan bilangan prima yang sekalanya sangat besar dapat diatasi dengan menggunakan prsesr tunggal, dan dapat mempercepat waktu akses. 6. Daftar Pustaka Abdul Kadir & Heriyant. 2005. Algritma Pemrgraman Menggunakan C++, Andi. Abdul Kadir. 2004. Panduan Pemrgraman Visual C++, Andi. Adriant, 2008, Pentingnya Metde Pendekatan Green Cmputing, http://wssid.rg/blgs/adriant/archive/2008/10/24/pentingnya-pendekatan-metde-greencmputing.aspx David Wells. 2005 Prime Numbers: The Mst Mysterius Figures in Math. Jhn Wiley & Sns. Inc., ISBN 0-471-46234-9. Ek Budi Purwant. 2008. Perancangan & Analisis Algritma,Graha ilmu. Gk Asid Har. ( 2007, Mei 06 ). Re : Algritma Pencarian Bilangan Prima. [Online]. available: if15072@students.if.itb.ac.id [2007, Mei 06]. Hanugra Abidiant. ( 2009, Januari 04 ). Re : Bilangan Prima dan Aplikasinya dalam Bidang Infrmatika. [Online]. Available: that.kid.is.sherlck@gmail.cm [2009, Januari 04]. Jansen. (2007, Februari 27). Re: Studi sejarah dan perkembangan bilangan prima. [Online]. Available: if16028@students.if.itb.ac.id [2007, Februari 27]. Jhn R.Hubbard. 2000. Data Structures With C++,McGraw-hill Cmpanies. Rakhmat, Imat H, 2010. Generatr Bilangan Prima Dengan Menggunakan Struktur Bit Array. UGM, Ygyakarta. Rinaldi munir & Leni lidya. 2002. Algritma dan Pemrgraman dalam Bahasa Pascal dan C, Infrmatika. Hamnangan Situmrang. ( 2009, Mei 18 ). Algritma dan Struktur Data, telecm.ee.itb.ac.id/~mnang/if2031/array_dalam_bahasa C. Wahyuni. 2004. Sistem Berkas, Andi. http://www.trubleshters.cm/cdecrn/primenumbers/primenumbers.htm http://en.wikipedia.rg/wiki/bit_array