T1 622009010 BAB III

(1)

15 BAB III

PERANCANGAN

Pada bab ini di jelaskan tentang bagaimana realisasi dari CPU computing, GPU computing, dan Cluster Computing serta sistem pengaturan dan struktur coding dari masing – masing metode computing.

3.1. Gambaran Sistem

Skema dari metode computing yang akan dirancang terdiri dari CPU computing, cluster computing, GPU computing adalah sebagai berikut :

Gambar 3.1 Skema CPU Computing [12].


(2)

16

Gambar 3.3 Skema GPU Computing [5]. Tabel 3.1. Spesifikasi Komputer yang digunakan untuk pengujian

Komputer 1 Komputer 2

Processor Intel Core i5-3230M @2,6 GHz Intel Core i3- 311M @2,4GHz

RAM DDR3 800MHz 4GB DDR3 800MHz 4GB

GPU NVIDIA Geforce GT635M Intel HD Graphics

3.2. Cara Kerja Sistem

3.2.1. Setting OpenMPI Pada Visual Studio


(3)

17

Klik kanan project pada Solution Manager, kemudian pilih properties. Pada Configuration Properties, expand C/C++ pilih general, kemudian pada kolom Additional Include Directories, berikan path dari folder include OpenMPI, supaya header OpneMPI dapat terbaca oleh sistem.

Gambar 3.5 Additional Library Directories.

Gambar 3.6 Additional Dependencies.

Expand menu linker, kemudian pilih general, pada Additional Library Directories berikan path folder lib OpenMPI supaya file mpi.lib yang dideklarasikan di Additional Dependencies pada sub menu linkerinput, dapat berjalan pada saat compile dan


(4)

18

menjalankan aplikasi. Eksekusi program dengan mpirun pada OpenMPI yang dijalankan pada command prompt, harus memiliki koneksi internet untuk menjalankannya. Untuk menjalankan program MPI pada command prompt digunakan coommand:

Local : mpirun np 2 file.exe

Angka 2 pada command tersebut digunakan untuk mensimulasikan jumlah proses yang secara virtual berjalan pada local host, bisa diganti dengan angka yang berjumlah 2n Cluster : mpirun np 2 host host1,host2 file.exe

Sama seperti dengan local, hanya ditambahkan dengan –host dan juga dengan nama komputer masing-masing host, jumlah host dan angka host harus sama dengan sejumlah 2n [9].

3.2.2. Setting Nvidia Nsight

Langkah awal dalam menggunakan Nvidia Nsight, adalah pada PC user sudah terinstall visual studio, supaya pada waktu instalasi Nvidia Toolkit, template dari Nsight dapat terintegrasi pada new project visual studio, sehingga dapat langsung digunakan oleh user. Setelah Instalasi berhasil dilakukan, cek kompatibilitas dari hardware GPU, support atau tidak untuk memprogram dan menjalankan CUDA.


(5)

19

Gambar 3.8 Pencarian Code Samples untuk uji coba GPU.

Untuk mengetahui apakah GPU yang terpasang di PC mendukungCUDA dapat dilakukan pada NVIDIA CUDA samples browser, search dengan kata kunci particles kemudian pada smoke particles klik run.

Gambar 3.9 Smoke screen code samples.


(6)

20

Gambar 3.10 Template dari CUDA yang terintegrasi dengan Visual Studio.

Setelah proses instalasi selesai maka installation summary akan menampilkan fitur-fitur dan komponen dari CUDA Nsight yang telah berhasil di integrasikan pada visual studio dan pada PC user. Dan pada visual studio sudah terintegrasi template project CUDA runtime.


(7)

21

Pada Environment Variabel yang terdapat di My Computer Properties lalu pilih Advanced system settings, pastikan terdapat CUDA path yang berisi letak dari folder bin , include, dan library dari CUDA, supaya program CUDA dapat dikompilasi dan dieksekusi oleh user. [1]

3.2.2.1. Cuda Template

CUDA template adalah kode minimum yang digunakan untuk mengeksekusi GPU. CUDA template terdiri dari kode host dan kode device. Potongan kode di bawah adalah kode template untuk aplikasi sederhana: [5, Hal 76 ]

#include <stdio.h> 1. #include <cuda.h>

2.__global__ void square_array(float * a, int N)

3.{

4. <Kode GPU>

5.}

<Kode CPU>

6.int main(void)

7. {

8. //Inisialisasi memory CPU

9. float *a_h, *a_d;

10. const int N = 10;

11. size_t size = N * sizeof(float);

12. a_h = (float *)malloc(size);

13. //Inisialisasi memory GPU

14. cudaMalloc((void **) &a_d, size);

15. //Penyalinan data dari CPU ke GPU

16. cudaMemcpy(a_d, a_h, size,cudaMemcpyHostToDevice);

17. //pemanggilan kernel

18. kernel<<< jumlah block, jumlah thread >>> (a_d,N);

19. //Penyalinan data dari GPU ke CPU

20. cudaMemcpy(a_h,a_d,sizeof(float)*NcudaMemcpyDeviceT

oHost);

21. }

3.2.3. Setting Koneksi Cluster

3.2.3.1.Konfigurasi Firewall

Firewall pada masing-masing komputer user harus terbuka, supaya koneksi dari MPI yang dikirimkan dari komputer cluster tidak di block oleh komputer lainnya.


(8)

22

Gambar 3.12 Pencarian Firewall dengan searchbox.

Gambar 3.13 Advanced Security Firewall.

Pada search box di start menu, masukkan dengan kata pencarian firewall, kemudian pilih Windows Firewall with Advanced Security. Pilih Windows Firewall with Advanced Security on local Computer, klik Windows Firewall Properties.


(9)

23

Gambar 3.14 Firewall Properties.

Kemudian status Firewall State pilih menjadi off. Sehingga inbound dan outbound connections tidak memblokir koneksi MPI pada saat mengirim data pada cluster atau pada saat menerima data.

3.2.3.2. Konfigurasi IP dan User Credential

Gambar 3.15 Search Network and Sharing Center.

Pada search box cari network and sharing center. Untuk membuka setting adapter LAN


(10)

24

Gambar 3.16 Network and Sharing Center.

Pilih pada Change adapter setting , kemudian pada Local Area Connection klik kanan dan pilih properties.

Gambar 3.17 Local Area Connection Properties. Pilih pada Internet Protocol Version 4, lalu klik properties.


(11)

25

Gambar 3.18 IPV4 Properties.

Setting masing-masing PC user dengan menggunakan cara yang sama, dan set masing-masing IP PC. Dalam project ini PC pertama menggunakan IP 192.168.62.10 dan PC kedua menggunakan IP 192.168.62.11


(12)

26

PC 1 PC 2

Gambar 3.19 User Account host dan client.

Nama user pada PC 1 dan PC 2 dan juga password harus identik, supaya pada proses eksekusi OpenMPI PC 2 terdeteksi, dan MPI dapat melakukan transfer data antara PC 1 dan PC2.

3.2.3.3. Setting Component Service

Pada search box start menu, ketikkan dcomcnfg.exe , tekan enter, pilih Component service, kemudian masuk ke folder Computer, pada my Computer klik kanan pilih

properties.


(13)

27

Gambar 3.21 Limit COM Security pada My Computer Properties.

Klik COM Security pilih edit limits. Disini akan di konfigurasikan koneksi user ke komputer utama, supaya security PC memberikan status allow pada user yang terhubung pada komputer utama. Add terlebih dahulu user yang akan diberikan permission untuk mengakses komputer utama.

Gambar 3.22 Search Select User.

Klik advanced sehingga muncul menu untuk menambahkan jenis user yang akan di tambahkan ke permission.


(14)

28

Gambar 3.23 Advanced Select User.

Klik Find now untuk mencari jenis user, kemudian pilih everyone, lalu klik OK.

Gambar 3.24 Edit Permission untuk user yang dipilih.

Check box yang terdapat pada Access Permission dan launch and activation permision pada user Everyone. Beri check pada allow untuk semua opsi nya. Lalu OK dan tutup Component Service.


(1)

23

Gambar 3.14 Firewall Properties.

Kemudian status Firewall State pilih menjadi off. Sehingga inbound dan outbound connections tidak memblokir koneksi MPI pada saat mengirim data pada cluster atau pada saat menerima data.

3.2.3.2. Konfigurasi IP dan User Credential

Gambar 3.15 Search Network and Sharing Center.

Pada search box cari network and sharing center. Untuk membuka setting adapter LAN


(2)

24

Gambar 3.16 Network and Sharing Center.

Pilih pada Change adapter setting , kemudian pada Local Area Connection klik kanan dan pilih properties.

Gambar 3.17 Local Area Connection Properties. Pilih pada Internet Protocol Version 4, lalu klik properties.


(3)

25

Gambar 3.18 IPV4 Properties.

Setting masing-masing PC user dengan menggunakan cara yang sama, dan set masing-masing IP PC. Dalam project ini PC pertama menggunakan IP 192.168.62.10 dan PC kedua menggunakan IP 192.168.62.11


(4)

26

PC 1 PC 2

Gambar 3.19 User Account host dan client.

Nama user pada PC 1 dan PC 2 dan juga password harus identik, supaya pada proses eksekusi OpenMPI PC 2 terdeteksi, dan MPI dapat melakukan transfer data antara PC 1 dan PC2.

3.2.3.3. Setting Component Service

Pada search box start menu, ketikkan dcomcnfg.exe , tekan enter, pilih Component service, kemudian masuk ke folder Computer, pada my Computer klik kanan pilih

properties.


(5)

27

Gambar 3.21 Limit COM Security pada My Computer Properties.

Klik COM Security pilih edit limits. Disini akan di konfigurasikan koneksi user ke komputer utama, supaya security PC memberikan status allow pada user yang terhubung pada komputer utama. Add terlebih dahulu user yang akan diberikan permission untuk mengakses komputer utama.

Gambar 3.22 Search Select User.

Klik advanced sehingga muncul menu untuk menambahkan jenis user yang akan di tambahkan ke permission.


(6)

28

Gambar 3.23 Advanced Select User.

Klik Find now untuk mencari jenis user, kemudian pilih everyone, lalu klik OK.

Gambar 3.24 Edit Permission untuk user yang dipilih.

Check box yang terdapat pada Access Permission dan launch and activation permision pada user Everyone. Beri check pada allow untuk semua opsi nya. Lalu OK dan tutup Component Service.