Diajukan Oleh:
Nama
: Agus Diyansyah
NIM
: 3201216006
: Teknik Informatika
TEKNIK INFORMATIKA
POLITEKNIK NEGERI PONTIANAK
2014
Daftar Isi
Daftar Isi....................................................................................................................... i
Bab I Landasan Teori................................................................................................... 1
A.
Benchmarking ................................................................................................. 1
B.
Sorting............................................................................................................. 1
C.
Buble Sort........................................................................................................ 1
Bab II Praktikum.......................................................................................................... 2
D.
E.
Pembahasan Praktikum.................................................................................... 2
1.
Python.......................................................................................................... 3
2.
Java.............................................................................................................. 4
3.
C++.............................................................................................................. 5
4.
C .................................................................................................................. 7
Bab 3 Kesimpulan...................................................................................................... 10
A.
Kesimpulan.................................................................................................... 10
A. Benchmarking
Benchmark adalah teknik pengetesan dengan menggunakan suatu nilai standar. Suatu
program atau pekerjaan yang melakukan perbandingan kemampuan dari berbagai kerja dari
beberapa peralatan dengan tujuan untuk meningkatkan kualitas pada produk yang baru.
Pengujian dilakukan dengan cara membandingkan produk-produk perangkat lunak maupun
perangkat keras dengan percobaan yang sama (Riemogerz, 2012).
B. Sorting
Dalam arti bahasa sorting adalah penyortiran atau memilih-milih. Pada struktur
data sorting adalah sebuah metode untuk pengurutan data, misalnya dari data yang terbesar ke
data yang terkecil, dengan cara program yang dibuat harus dapat membandingkan antar data
yang di inputkan, artinya jika ada deretan data, maka data yang pertama akan
membandingkan dengan data yang kedua. Jika data yang pertama lebih besar dari pada data
yang kedua maka data yang pertama akan bertukar posisi dengan data yang kedua, begitu
seterusnya sampai benar-benar data terurut dari yang terbesar hingga yang terkecil
(Algoritma, 2012).
C. Buble Sort
Bubble sort adalah metode atau algoritma pengurutan dengan cara melakukan
penukaran data dengan tempat disebelahnya jika data sebelum lebih besar dari pada data
sesudahnya secara terus menerus sampai bisa dipastikan dalam satu iterasi tertentu tidak ada
lagi perubahan, atau telah terurut dengan benar. Jika tidak ada perubahan berarti data sudah
terurut. Disebut pengurutan gelembung karena masing-masing kunci atau data akan dengan
lambat menggelembung atau membandingan data ke posisinya yang tepat.
Metode ini mudah dipahami dan diprogram, tetapi bila dibandingkan dengan metode
lain yang kita pelajari, metode ini merupakan metode yang paling tidak efisien karena
memiliki banyak pertukara sehingga memerlukan pengalokasian memori yang besar untuk
menjalankan metode ini (Algoritma, 2012).
Bab II Praktikum
D.
Batasan Masalah
Pada praktikum kali ini, penulis akan melakukan bencmarking pada program sorting
dengan menggunakan empat bahasa pemrograman (python, java, c++ dan c) dan dengan
menggunakan teknik buble short sebagai algoritma sorting yang akan diuji pada keempat
bahasa pemrograman.
E.
Pembahasan Praktikum
Sebelum membuat program sorting, penulis membaut sebuah file yang berisi data
nomor acak dari 0 10000 sebanyak 5000 buah nomor, kali ini penulis membuat membuat
nomor-nomor acak tersebut dengan menggunakan program yang dibangun dengan bahasa
Python, berikut screenshot listing program yang digunakan.
Jika program berhasil dijalankan, maka akan muncul file baru pada direktori dengan
nama acak.txt, didalam file inilah terdapat nomor acak yang akan do urutkan.
2
1.
Python
Gambar diatas adalah listing program sorting buble short dengan menggunakan
bahasa python, save program yang telah dibuat, kemudian masuk kedirektori program
dengan menggunakan cygwin.
Untuk melakukan benchmarking program python penulis menggunakan perintah
berikut dengan menggunakan cygwin.
time python buble.py >/dev/null
Dari hasil benchmarking terlihat waktu eksekusi untuk program selama 6.943
detik.
2.
Java
Berikut adalah listing program sorting dengan menggunakan teknik buble short
Dari hasil benchmarking terlihat waktu eksekusi untuk program selama 2.016
detik.
3.
C++
Berikut adalah listing program sorting dengan menggunakan teknik buble short
Dari hasil benchmarking terlihat waktu eksekusi untuk program selama 0.307
detik.
4.
C
Berikut adalah listing program sorting dengan menggunakan teknik buble short
Dari hasil benchmarking terlihat waktu eksekusi untuk program selama 0.181
detik.
Bab 3 Kesimpulan
A.
Kesimpulan
Benchmark adalah teknik pengetesan dengan menggunakan suatu nilai standar, dengan
menggunakan algoritma shorting, kita dapat mengurutkan bilangan dari yang terbesar ke
yang terkecil atau sealiknya, salah satu algoritma shorting adalah buble short, bubble
sort adalah metode atau algoritma pengurutan dengan cara melakukan penukaran data dengan
tempat disebelahnya jika data sebelum lebih besar dari pada data sesudahnya secara terus
menerus sampai bisa dipastikan dalam satu iterasi tertentu tidak ada lagi perubahan, atau
telah terurut dengan benar. Jika tidak ada perubahan berarti data sudah terurut. Disebut
pengurutan gelembung karena masing-masing kunci atau data akan dengan lambat
menggelembung atau membandingan data ke posisinya yang tepat.
Pada pengujian algoritma buble short pada empat bahasa pemrograman yang berbeda
(python, java, c++, dan c), program dengan menggunakan bahasa pemrograman c memiliki
benchmark lebih cepat dari program yang sebelumnya, namun relatif lebih memiliki prosedur
yang lebih panjang, berikut urutan benchmark dari yang paling cepat ke yang paling lambat
Bahasa Pemrograman
Hasil Benchmark
0m0.181s
C++
0m0.307s
Java
0m2.016s
Python
0m6.943s
10
Daftar Pustaka
Algoritma, K. M. (2012, Mei 18). Metode Sorting pada Pemrograman C++ . Dipetik Maret
7,
2015,
dari
http://hariyatir-basiru.blogspot.com:
http://hariyatir-
basiru.blogspot.com/2012/05/metode-sorting-pada-pemrograman-c_18.html
Riemogerz. (2012, January 13). Benchmark. Dipetik Maret 7, 2015, dari Wikipedia:
http://id.wikipedia.org/wiki/Benchmark
11