Self-assessment by computer-assisted interpreter training ...
Benchmarking Compiler & Interpreter Berbasis Bahasa Pemograman
-
Upload
independent -
Category
Documents
-
view
0 -
download
0
Transcript of Benchmarking Compiler & Interpreter Berbasis Bahasa Pemograman
Benchmarking Compiler & Interpreter Based
Programming Language
DI SUSUN OLEH :
ADITYA TUNGGAL PRAKOSO
3201216005
PRODI TEKNIK INFORMATIKA
JURUSAN TEKNIK ELEKTRO
POLITEKNIK NEGERI PONTIANAK
TAHUN 2015
BAB 1
TEORI PRAKTIKUM
A. BENCHMARK
Ada dua defenisi benchmark yaitu :
Sebuah tanda atau objek permanen yang menandai tingkat ketinggian yang berlaku
sebagai titik ukur dalam survei topografi atau pengamatan ombak atau arus.
Dalam referensi lain istilah benchmark diartikan sebagai berikut :
- Sebuah titik ukur darimana pengukuran dapat dilakukan
- Sesuatu yang menjadi standar untuk menilai atau mengukur hal yang lain
- Satu masalah atau test yang menjadi dasar penilaian atau perbandingan (seperti
sebuah perbandingan kinerja sistem komputer)
Sementara wikipedia memperjelas defenisi benchmark dalam kaitannya dengan
komputer yaitu tindakan menjalankan sebuah program komputer, serangkaian program
atau operasi lainnya untuk menilai kinerja relatif sebuah objek, biasanya dengan
menjalankan sejumlah test dan percobaan pada objek tersebut. Benchmarking sering
kali diasosiasikan dengan penilaian kinerja dan karakteristik hardware komputer,
contohnya kinerja floating point sebuah cpu, tetapi ada kondisi-kondisi tertentu dimana
teknik ini juga dapat diterapkan untuk software. Contohnya, benchmark untuk menguji
software compiler atau database management system.
B. SORTING
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.
Metode sorting sangat banyak dan berkembang ada Bubble sort, Selection Sort,
Insertion sort, Merge sort, Quick sort. Metode-metode ini menggunakan caranya sendiri
untuk membandingkan, memeriksa dan menukar posisi data. Namun tidak semua
metode sorting ini efektif. Karena metode sorting yang paling efektif adalah ketika
metode tersebut dapat melakukan pengurutan data dengan cepat dan tidak memerlukan
banyak memori.
C. METODE BUBBLE SORT
Metode pengurutan gelembung (Bubble Sort) diinspirasikan oleh gelembung
sabun yang berada dipermukaan air. Karena berat jenis gelembung sabun lebih ringan
daripada berat jenis air, maka gelembung sabun selalu terapung ke atas permukaan.
Prinsip di atas dipakai pada pengurutan gelembung.
Bubble sort (metode gelembung) adalah metode/algoritma pengurutan dengan
dengan cara melakukan penukaran data dengan tepat disebelahnya secara terus menerus
sampai bisa dipastikan dalam satu iterasi tertentu tidak ada lagi perubahan. Jika tidak
ada perubahan berarti data sudah terurut. Disebut pengurutan gelembung karena
masing-masing kunci akan dengan lambat menggelembung ke posisinya yang tepat.
Artinya Algoritma ini akan menggeser nilai yang terkecil atau terbesar (sesuai dengan
jenis pengurutan, ascending atau descending) ke posisi ujung dari daftar. Demikian
seterusnya hingga semua daftar dalam keadaan terurut. Proses dasar yang terjadi dalam
algoritma ini adalah proses pertukaran nilai (swapping).
Contoh Penggunaan Metode Bubble Sort :
Contoh diatas menyelesaikan pengurutan dari kanan ke kiri namun hasil akan sama yang
membedakan adalah tergantung cara pengurutan yang dipilih apakah secara ascending
atau descending.
BAB 2
PEMBAHASAN PRAKTIKUM
A. Membandingkan Proses Looping dengan menggunakan bahasa
pemograman Python, Java, C dan C++
1) Percobaan Looping Menggunakan Bahasa Python
1. Siapkan File Program Looping Python, kode program yang digunakan adalah
sebagai berikut :
Simpan program anda dengan menggunakan ekstensi “.py” pada direktori komputer
anda. Contoh penamaan file : “looptest-py.py”
2. Buka Aplikasi Cygwin, dan pindahkan direktorinya pada tempat anda menyimpan
file program python.
3. Lakukan proses compile pada program python yang telah dibuat.
Hasil dari proses tersebut akan menampilkan perulangan angka sebagai berikut :
4. Lakukan proses benchmarking pada program python tersebut. Proses Benchmarking
bertujuan untuk mengetahui berapa lama waktu yang dibutuhkan oleh komputer
untuk memproses dan mengeksekusi program yang telah dibuat.
Dari hasil tersebut, dapat diketahui bahwa waktu yang dibutuhkan komputer untuk
mengeksekusi program membutuhkan waktu sekitar 3 detik
2) Percobaan Looping Dengan Menggunakan Bahasa Java
1. Siapkan File Program Looping Java, kode program yang digunakan adalah sebagai
berikut :
Simpan program anda dengan menggunakan ekstensi “.java” pada direktori
komputer anda. Penyimpanan nama file harus sesuai dengan nama class yang
digunakan pada kode program. Contoh penamaan file : “LooptestJava.java”
2. Buka Aplikasi Cygwin, dan pindahkan direktorinya pada tempat anda menyimpan
file program java.
3. Lakukan proses compile pada program java yang telah dibuat.
Untuk menjalankan program java yang telah di-compile, ketikan perintah seperti
berikut :
Hasil eksekusi program akan menampilkan perulangan seperti gambar dibawah ini :
4. Lakukan proses benchmarking pada program Java tersebut.
Dari hasil tersebut, dapat diketahui bahwa waktu yang dibutuhkan komputer untuk
mengeksekusi program membutuhkan waktu sekitar 0.6 detik
3) Percobaan Looping Dengan Menggunakan Bahasa C
1. Siapkan File Program Looping Java, kode program yang digunakan adalah sebagai
berikut :
Simpan program anda dengan menggunakan ekstensi “.c” pada direktori komputer
anda. Contoh penamaan file : “looptest-c.c”
2. Buka Aplikasi Cygwin, dan pindahkan direktorinya pada tempat anda menyimpan
file program C.
3. Lakukan proses compile pada program C yang telah dibuat.
Untuk menjalankan program c yang telah di-compile, ketikan perintah seperti
berikut :
Hasil eksekusi program akan menampilkan perulangan seperti gambar dibawah ini :
4. Lakukan proses benchmarking pada program C tersebut.
Dari hasil tersebut, dapat diketahui bahwa waktu yang dibutuhkan komputer untuk
mengeksekusi program membutuhkan waktu sekitar 0.1 detik
4) Percobaan Looping Dengan Menggunakan Bahasa C++
1. Siapkan File Program Looping C++, kode program yang digunakan adalah sebagai
berikut :
Simpan program anda dengan menggunakan ekstensi “.cpp” pada direktori
komputer anda. Contoh penamaan file : “looptest-cpp.cpp”
2. Buka Aplikasi Cygwin, dan pindahkan direktorinya pada tempat anda menyimpan
file program C++.
3. Lakukan proses compile pada program C++ yang telah dibuat.
Untuk menjalankan program C++ yang telah di-compile, ketikan perintah seperti
berikut :
Hasil eksekusi program akan menampilkan perulangan seperti gambar dibawah ini :
4. Lakukan proses benchmarking pada program C++ tersebut.
Dari hasil tersebut, dapat diketahui bahwa waktu yang dibutuhkan komputer untuk
mengeksekusi program membutuhkan waktu sekitar 0.3 detik.
B. Membandingkan Proses Sorting BubbleSort dengan menggunakan
pemograman Python, Java, C++ dan C
1) Percobaan Sorting dengan menggunakan bahasa Python
1. Siapkan File Program Sorting Python, kode program yang digunakan adalah sebagai
berikut :
Simpan program anda dengan nama “acak.py” , file ini nantinya akan menghasilkan
file “acak.txt” yang berisi angka random berdasarkan range angka yang telah
ditentukan.
Kode Program yang akan menampilkan angka dan mengurutkannya berdasarkan
algoritma Bubble Sort dapat dilihat pada gambar dibawah :
Simpan file tersebut dengan nama “bubblesort.py” pada direktori komputer anda.
2. Buka Aplikasi Cygwin, dan pindahkan direktorinya pada tempat anda menyimpan
file program Python.
3. Lakukan proses compile pada program Python yang telah dibuat.
Hasil dari proses tersebut akan menampilkan angka acak dan akan diurutkan dari
nilai terkecil hingga nilai terbesar.
4. Lakukan proses benchmarking pada program Python tersebut.
Dari hasil tersebut, dapat diketahui bahwa waktu yang dibutuhkan komputer untuk
mengeksekusi program membutuhkan waktu sekitar 43 detik.
2) Percobaan Sorting dengan menggunakan bahasa Java
1. Siapkan File Program Sorting Java, kode program yang digunakan adalah sebagai
berikut :
Simpan program anda dengan nama “Bubblesort.java” , penamaan file harus sesuai
dengan nama class yang dituliskan pada kode program.
2. Buka Aplikasi Cygwin, dan pindahkan direktorinya pada tempat anda menyimpan
file program Java.
3. Lakukan proses compile pada program Java yang telah dibuat.
Untuk menampilkan hasil program, ketikan perintah berikut :
Hasil dari program akan menampilkan angka acak yang kemudian akan diurutkan
dari nilai terkecil hingga nilai terbesar.
4. Lakukan proses benchmarking pada program Java tersebut.
Dari hasil tersebut, dapat diketahui bahwa waktu yang dibutuhkan komputer untuk
mengeksekusi program membutuhkan waktu sekitar 0.7 detik.
3) Percobaan Sorting dengan menggunakan bahasa C++
1. Siapkan File Program Sorting C++, kode program yang digunakan adalah sebagai
berikut :
Simpan program anda dengan nama “Bubblesort.cpp” pada direktori komputer
anda.
2. Buka Aplikasi Cygwin, dan pindahkan direktorinya pada tempat anda menyimpan
file program C++.
3. Lakukan proses compile pada program C++ yang telah dibuat.
Untuk menampilkan hasil program, ketikan perintah berikut :
Hasil dari program akan menampilkan angka acak yang kemudian akan diurutkan
dari nilai terkecil hingga nilai terbesar.
4. Lakukan proses benchmarking pada program C++ tersebut.
Dari hasil tersebut, dapat diketahui bahwa waktu yang dibutuhkan komputer untuk
mengeksekusi program membutuhkan waktu sekitar 0.6 detik.
4) Percobaan Sorting dengan menggunakan bahasa C
1. Siapkan File Program Sorting C, kode program yang digunakan adalah sebagai
berikut :
Simpan program anda dengan nama “Bubblesort.c” pada direktori komputer anda.
2. Buka Aplikasi Cygwin, dan pindahkan direktorinya pada tempat anda menyimpan
file program C.
3. Lakukan proses compile pada program C yang telah dibuat.
Untuk menampilkan hasil program, ketikan perintah berikut :
Hasil dari program akan menampilkan angka acak yang kemudian akan diurutkan
dari nilai terkecil hingga nilai terbesar.
4. Lakukan proses benchmarking pada program C tersebut.
Dari hasil tersebut, dapat diketahui bahwa waktu yang dibutuhkan komputer untuk
mengeksekusi program membutuhkan waktu sekitar 0.6 detik.
BAB 3
KESIMPULAN PRAKTIKUM
Berdasarkan Praktikum yang telah dilakukan, maka di hasilkan kesimpulan sebagai berikut :
1. Waktu yang dibutuhkan komputer untuk mengeksekusi program berbasis Compiler
seperti Java dan C lebih cepat jika dibandingkan dengan waktu eksekusi program
berbasis Interpreter seperti Python
2. Bahasa Python hanya memerlukan sedikit baris kode dalam penulisannya, namun akan
memakan banyak waktu ketika proses eksekusi programnya.
3. Bahasa C, C++ dan Java memiliki proses penulisan baris program yang cukup rumit
jika dibandingkan dengan Bahasa Python, namun proses eksekusi program akan
berjalan dengan cepat.