• Tidak ada hasil yang ditemukan

Institutional Repository | Satya Wacana Christian University: Multitasking dengan Menggunakan Nvidia Cuda T1 622009010 BAB IV

N/A
N/A
Protected

Academic year: 2017

Membagikan "Institutional Repository | Satya Wacana Christian University: Multitasking dengan Menggunakan Nvidia Cuda T1 622009010 BAB IV"

Copied!
13
0
0

Teks penuh

(1)

29 BAB IV

PENGUJIAN DAN ANALISIS

Pada bab ini akan dijelaskan tentang pengujian dari masing – masing metode computing dan juga analisa dari hasil pengujian tersebut. Pengujian dilakukan pada waktu proses dengan menjalankan aplikasi yang menerapkan algoritma sorting, perkalian matriks, inverse matrix dengan gauss jordan, BFS, dan Binary Search secara bersama-sama pada setiap metode computing, dan kemudian akan di ambil analisa.

4.1. Pengujian pada CPU Computing

Pengujian untuk CPU computing dilakukan dengan menjalankan beberapa aplikasi yang telah dirancang secara bersamaan, kemudian hasil waktu akan dibandingkan.

4.1.1. Pengujian dengan Integer A. Aplikasi yang diuji

Aplikasi sorting , perkalian matriks, binary search , dan eliminasi gauss jordan dengan menggunakan input bilangan integer.

B. Langkah Pengujian

1. Input jumlah data pada masing-masing aplikasi. 2. Eksekusi keempat aplikasi secara bersamaan.

(2)

30

Tabel 4.1. Pengujian Multitasking CPU dengan input Data Integer

Sorting Jumlah

data Waktu (ms)

Binary Search

Jumlah

data Waktu(ms)

1.000.000 903 1.000.000 0,173

3.000.000 4.721 3.000.000 0,181

5.000.000 11.134 5.000.000 0,190 7.000.000 20.783 7.000.000 0,228 9.000.000 32.792 9.000.000 0,236 Gauss

J

Ukuran

(Variabel) Waktu (ms) Matriks Ukuran Waktu(ms)

1.000 12.484 1.000 27.243

2.000 250.124 2.000 98.827

3.000 333.325 3.000 1.066.902

4.000 467.822 4.000 1.180.062

5.000 1.167.870 5.000 2.611.740

(3)

31

Gambar 4.2 Hasil Perkalian Matriks dengan sampel Matriks 10 x 10.

(4)

32

Gambar 4.4 Hasil Binary Search dengan 30 Sampel Data.

Pemrosesan CPU dengan mengimplementasikan algoritma search dan sorting, dapat menghasilkan waktu pemrosesan 0,903 detik sampai 32,792 detik untuk sorting dan 0,000173 detik sampai 0,000236 detik untuk search dengan input data 1.000.000 sampai 9.000.000 , namun waktu pemrosesan meningkat dengan melakukan perhitungan matriks dan juga eliminasi linier gauss jordan. Jumlah dari array dan proses read and write pada masing – masing array yang digunakan, membuat pemrosesan pada sorting dan search membutuhkan waktu yang lebih sedikit dari perhitungan eliminasi linier dan perkalian matriks.

(5)

33 4.1.2. Pengujian Dengan Floating Point

A. Aplikasi yang Diuji

Aplikasi sorting , perkalian matriks, binary search , dan eliminasi gauss jordan dengan menggunakan input bilangan floating point.

B. Langkah Pengujian

1. Input jumlah data pada masing-masing aplikasi. 2. Eksekusi keempat aplikasi secara bersamaan.

3. Setelah selesai catat waktu yang dibutuhkan masing-masing aplikasi. C. Hasil dan Analisa

Tabel 4.2. Pengujian Multitasking CPU dengan Input Data Floating Point

Sorting Jumlah

data Waktu (ms)

Binary Search

Jumlah

data Waktu(ms)

1.000.000 295 1.000.000 0,128

3.000.000 2.892 3.000.000 0,215

5.000.000 5849 5.000.000 0,285

7.000.000 9.921 7.000.000 0,201

9.000.000 15.040 9.000.000 0,224

Gauss J

Ukuran

(Variabel) Waktu (ms) Matriks Ukuran Waktu(ms)

1.000 4.683 1.000 17.506

2.000 93.014 2.000 290.700

3.000 339.697 3.000 848.876

4.000 754.039 4.000 2.090.270

5.000 787.667 5.000 3.183.011

(6)

34

Gambar 4.6 Binary Search dengan input 100 sampel data Floating Point.

Gambar 4.7 Perkalian matriks dengan sampel Matriks 10x10.

(7)

35

Pemrosesan algoritma searching dan sorting dengan ukuran data 9.000.000 data, CPU membutuhkan waktu 15,040 detik untuk sorting dan 0,000224 detik untuk searching, karena CPU keluaran terbaru sudah dilengkapi dengan Floating Point Unit (FPU) yang ditanamkan oleh pabrikan di chipset.

Namun FPU pada CPU belum bisa memberikan waktu proses seperti pada saat implementasi sorting dan searching. Pada saat memproses data input yang berupa floating point pada implementasi algoritma perkalian matriks membutuhkan waktu pemrosesan 3.183,011 detik dan metode eliminasi gauss jordan membutuhkan waktu 787,667 detik dengan menggunakan input data matriks yang berukuran 5000 x 5000.

4.2. Pengujian dengan GPU Computing

Pengujian pada GPU computing dengan menggunakan beberapa aplikasi yang juga digunakan pada CPU computing , yang nantinya akan di eksekusi secara bersamaan, dan hasilnya akan dibandingkan dengan metode lainnnya.

4.2.1. Pengujian dengan Integer A. Aplikasi yang Diuji

Aplikasi sorting , perkalian matriks, binary search , dan eliminasi gauss jordan dengan menggunakan input bilangan floating point.

B. Langkah Pengujian

1. Input jumlah data pada masing-masing aplikasi. 2. Eksekusi keempat aplikasi secara bersamaan.

(8)

36

Tabel 4.3. Pengujian Multitasking GPU dengan input Data Integer

Sorting Jumlah

data Waktu (ms)

Binary Search

Jumlah

data Waktu(ms) 1.000.000 0,002464 1.000.000 0,065376 3.000.000 0,002464 3.000.000 0,076544 5.000.000 0,002464 5.000.000 0,078528 7.000.000 0,002464 7.000.000 0,085376 9.000.000 0,002528 9.000.000 0,084224 Gauss

J

Ukuran

(Variabel) Waktu (ms) Matriks Ukuran Waktu(ms)

1.000 0,002496 1.000 0,002464

2.000 0,002496 2.000 0,002624

3.000 0,002432 3.000 0,002464

4.000 0,002624 4.000 0,002464

5.000 0,002624 5.000 0,002464

Berbeda dengan menggunakan CPU yang membutuhkan waktu proses lebih dari 50 menit pada saat pemrosesan perkalian matriks dengan ukuran data matriks yang sama yaitu 5000 x 5000, data yang di proses oleh GPU membutuhkan waktu proses 0,002464 milidetik. Karena GPU memiliki memori utama tersendiri untuk menopang kinerja dan jumlah core processor CUDA yang digunakan mempunyai 144 inti, dibandingkan dengan core processor CPU yang digunakan berjumlah 2 inti

4.2.2. Pengujian dengan Floating Point A. Aplikasi yang Diuji

Aplikasi sorting , perkalian matriks, binary search , dan eliminasi gauss jordan dengan menggunakan input bilangan floating point.

B. Langkah Pengujian

1. Input jumlah data pada masing-masing aplikasi. 2. Eksekusi keempat aplikasi secara bersamaan.

(9)

37

Tabel 4.4. Pengujian Multitasking GPU dengan input Data Floating Point

Sorting Jumlah

data Waktu (ms)

Binary Search

Jumlah

data Waktu(ms) 1.000.000 0,002464 1.000.000 0,075376 3.000.000 0,002464 3.000.000 0,076544 5.000.000 0,002464 5.000.000 0,078528 7.000.000 0,002464 7.000.000 0,085376 9.000.000 0,002528 9.000.000 0,088321 Gauss

J

Ukuran

(Variabel) Waktu (ms) Matriks Ukuran Waktu(ms)

1.000 0,002496 1.000 0,002464

2.000 0,002496 2.000 0,002624

3.000 0,002432 3.000 0,002464

4.000 0,002624 4.000 0,002464

5.000 0,002510 5.000 0,002464

Pada saat input dengan menggunakan data bertipe float, waktu yang dibutuhkan dalam pemrosesan tidak berbeda jauh dengan input data integer yang sebelumnya telah diuji. Dengan matriks 5000 x 5000 data integer membutuhkan waktu 0,002464 milidetik dan dengan input jumlah data yang sama tetapi bertipe float waktu prosesnya 0,088321 milidetik. Berbeda dengan pemrosesan menggunakan CPU yang sudah memiliki FPU, waktu pemrosesan pada perhitungan matriks 5000 x 5000 membutuhkan waktu 3.183,011 detik.

GPU CUDA didesain untuk render grafis yang memiliki data – data floating point dan di desain menggunakan arsitektur yang berbeda untuk pengolahan data, maka pemrosesan dengan input data float tidak akan membebani dari kinerja GPU.

4.3. Pengujian dengan MPI

Pengujian dengan MPI, menggunakan aplikasi MPICH2 dan menggunakan lib, include dan bin dari MPICH2 untuk eksekusi aplikasi yang sudah terintegrasi dengan MPI. Menggunakan 2 PC yang tersambung dengan LAN.

4.3.1. Pengujian dengan Integer A. Aplikasi yang Diuji

(10)

38 B. Langkah Pengujian

1. Input jumlah data pada masing-masing aplikasi. 2. Eksekusi keempat aplikasi secara bersamaan.

3. Setelah selesai catat waktu yang dibutuhkan masing-masing aplikasi. C. Hasil dan Analisa

Tabel 4.5. Pengujian Multitasking cluster CPU dengan input data Integer

Sorting Jumlah

data Waktu (ms)

Binary Search

Jumlah

data Waktu(ms)

1.000.000 600 1.000.000 2.353

3.000.000 2.614 3.000.000 3.537

5.000.000 5.657 5.000.000 4.992

7.000.000 11.604 7.000.000 9.060

9.000.000 20.743 9.000.000 13.154

Gauss J

Ukuran

(Variabel) Waktu (ms) Matriks Ukuran Waktu(ms)

1.000 3.493 1.000 12.729

2.000 16.974 2.000 107.041

3.000 50.827 3.000 375.454

4.000 112.843 4.000 997.356

5.000 212.680 5.000 1.995.244

Pengujian dengan menggunakan MPI didapatkan waktu yang lebih cepat dari menggunakan satu CPU, pada sorting menggunakan input 9.000.000 data, single CPU membutuhkan waktu 32,792 detik dan dengan cluster computing membutuhkan waktu proses 20,743 detik. Namun ada yang berbeda dengan Binary Search , dikarenakan struktur data dari binary search. Apabila data di distribusikan ,akan membutuhkan waktu pada saat data transfer dan waktu koneksi antara dua komputer.

(11)

39 4.3.2. Pengujian dengan Floating Point

A. Aplikasi yang Diuji

Aplikasi sorting , perkalian matriks, binary search , dan eliminasi gauss jordan dengan menggunakan input bilangan Integer.

B. Langkah Pengujian

1. Input jumlah data pada masing-masing aplikasi. 2. Eksekusi keempat aplikasi secara bersamaan.

3. Setelah selesai catat waktu yang dibutuhkan masing-masing aplikasi. C. Hasil dan Analisa

Tabel 4.6. Pengujian Multitasking cluster CPU dengan input data Floating Point

Sorting Jumlah

data Waktu (ms)

Binary Search

Jumlah

data Waktu(ms)

1.000.000 1.237 1.000.000 2.530

3.000.000 2.211 3.000.000 5.788

5.000.000 5.605 5.000.000 11.689

7.000.000 7.892 7.000.000 15.170

9.000.000 19.050 9.000.000 17.234

Gauss J

Ukuran

(Variabel) Waktu (ms) Matriks Ukuran Waktu(ms)

1.000 76.356 1.000 13.093

2.000 611.953 2.000 105.003

3.000 2.033.694, 3.000 395.775

4.000 4.856.766 4.000 1.010.834

5.000 9.475.768 5.000 2.065.384

(12)

40

4.4. Perbandingan Hasil Pengujian dengan Teori Kompleksitas Waktu

Setiap algoritma yang digunakan dalam pengujian memiliki kompleksitas, pada perkalian matriks dan eliminasi linier kompleksitas waktu yang dimiliki adalah O(N3), pada sorting memiliki kompleksitas waktu O(N log N) dan binary search memiliki kompleksitas waktu O(log N).

Perhitungan waktu kompleksitas perkalian matriks dan eliminasi linier pada input data 1000 x 1000 membutuhkan waktu pemrossan waktu 13.093 ms, apabila diterapkan pada penggunaan O(N3), pada input 2000 x 2000 akan menghasilkan waktu 104.744 ms , dan waktu pada pengujian menggunakan CPU 105.003 ms untuk perkalian matriks dan untuk eliminasi linier pada input data 1000 x 1000 membutuhkan waktu pemrosesan 76.356 ms, saat diterapkan dengan kompleksitas O(N3), maka akan menghasilkan waktu 610.848 ms. Selisih waktu dikarenakan beberapa faktor, seperti kecepatan CPU, kapasitas RAM, dan Jumlah core dari CPU.

GPU yang memiliki arsitektur berbeda dengan CPU, mengeksekusi data dengan paralel ke semua core yang dimiliki GPU. Waktu yang dibutuhkan tidak seperti CPU yang berjalan secara sekuensial. Dengan performa memory copy host to device 6000 MiB/s, device to host sebesar 6000 MiB/s, dan device to device sebesar 12.000 GiB/s, serta GPU

core performance untuk integer 84.000 Giop/s, single-precision float 168.608 Gflop/s, dan double-precision float 21.000 Gflop/s maka waktu pemrosesan mampu diselesaikan dalam kurang dari 1 detik.

(13)

41

4.5. Tabel Perbandingan Hasil Pengujian CPU Computing, GPU Computing, dan Cluster Computing

4.5.1. Sorting Jumlah

Data

CPU Computing (waktu) (ms)

GPU Computing (waktu) (ms)

Cluster Computing (waktu) (ms)

integer float integer float integer float

1.000.000 903 295 0,002464 0,002464 600 1.237

3.000.000 4.721 2.892 0,002464 0,002464 2.614 2.211

5.000.000 11.134 5849 0,002464 0,002464 5.657 5.605

7.000.000 20.783 9.921 0,002464 0,002464 11.604 7.892

9.000.000 32.792 15.040 0,002528 0,002528 20.743 19.050 4.5.2. Binary Search

Jumlah Data

CPU Computing (waktu) (ms)

GPU Computing (waktu) (ms)

Cluster Computing (waktu) (ms)

integer float integer float integer float

1.000.000 0,173 0,128 0,065376 0,075376 2.353 2.530

3.000.000 0,181 0,215 0,076544 0,076544 3.537 5.788

5.000.000 0,190 0,285 0,078528 0,078528 4.992 11.689

7.000.000 0,228 0,201 0,085376 0,085376 9.060 15.170

9.000.000 0,236 0,224 0,084224 0,088321 13.154 17.234 4.5.3. Perkalian Matriks

Jumlah Data

CPU Computing (waktu) (ms)

GPU Computing (waktu) (ms)

Cluster Computing (waktu) (ms)

integer float integer float integer float

1.000 27.243 17.506 0,002464 0,002464 12.729 13.093

2.000 98.827 290.700 0,002624 0,002624 107.041 105.003 3.000 1.066.902 848.876 0,002464 0,002464 375.454 395.775 4.000 1.180.062 2.090.270 0,002464 0,002464 997.356 1.010.834 5.000 2.611.740 3.183.011 0,002464 0,002464 1.995.244 2.065.384

4.5.4. Eliminasi Linier Gauss Jordan Jumlah

Data

CPU Computing (waktu) (ms)

GPU Computing (waktu) (ms)

Cluster Computing (waktu) (ms)

integer float integer float integer float

1.000 12.484 4.683 0,002496 0,002496 3.493 76.356

Gambar

Gambar 4.1 Hasil Sorting dengan Sampel 100 Data.
Gambar 4.2 Hasil Perkalian Matriks dengan sampel Matriks 10 x 10.
Gambar 4.4 Hasil Binary Search dengan 30 Sampel Data.
Tabel 4.2. Pengujian Multitasking CPU dengan Input Data Floating Point
+6

Referensi

Dokumen terkait

Komunikasi non formal muncul, karena saluran formal yang tersedia terhambat Sengaja dipilih ketika suatu pesan tidak memungkinkan disampaikan scr formal Lebih banyak berupa

Mata bor helix kecil ( Low helix drills ) : mata bor dengan sudut helix lebih kecil dari ukuran normal berguna untuk mencegah pahat bor terangkat ke atas

Disemprotkan ( Jet Application of Fluid ), pada proses pendinginan dengan cara ini cairan pendingin disemprotkan langsung ke daerah pemotongan (pertemuan antara

Karena itu istri dan anak memberikan support dalam bentuk istri dan anak menghibur dan menyemangati, istri mendengarkan keluh kesah subyek, istri menenangkan, istri dan anak

PEKERJAAN : LANJUTAN PEMBANGUNAN PAGAR NATURAL COTTAGE OW..

Pada hari ini Rabu tanggal Enam Belas bulan Juli tahun Dua Ribu Empat Belas, dengan menggunakan aplikasi SPSE melalui website www.lpsedonggala.go.id telah dilakukan acara

Spiritual teaching strategies can be conducted by combining the principles of teacher leadership and character education approach in the process of learning and

PEMERINTAH KABUPATEN HULU SUNGAI SELATAN UNIT LAYANAN PENGADAAN (ULP) BARANG / JASA.. KELOMPOK KERJA