Cogito Smart Journal | VOL. 6 - NO. JUNE 2020 Pemilihan Graphics Processing Unit Nvidia dan AMD Menggunakan Algoritma Simple Additive Weighting Electing Graphics Processing Nvidia and AMD Using Simple Additive Weighting Jeffrey Jahja1. Rizky Albert Hartono2. Kristien Margi Suryaningrum3 1,2,3 Fakultas Teknologi dan Desain. Universitas Bunda Mulia Jl. Lodan Raya No. 2 Ancol. Jakarta Utara 14430 e-mail: 1jeffrey. 511999@gmail. com, 2rizky. albert@gmail. com, 3kristienmargi@gmail. Abstrak Graphics Processing Unit (GPU) merupakan komponen komputer yang bekerja untuk mengelola grafis pada komputer baik dalam bentuk video, gambar, animasi. Pemilihan Graphics Processing Unit bagi pengguna komputer merupakan hal yang harus diperhatikan demi penggunaan yang maksimal. Penelitian dilakukan bertujuan untuk membangun sistem pengambilan keputusan untuk pemilihan Graphics Processing Unit. Metode yang digunakan dalam penelitian ini adalah (SAW) Simple Additive Weighting. Konsep dari Simple Additive Weighting adalah dengan memberikan bobot pada setiap kriteria yang digunakan kemudian dilanjutkan dengan perangkingan untuk mendapatkan hasil yang sesuai dengan bobot kriteria yang paling sesuaai. Penelitian ini dilakukan dengan urutan analisis, desain, program, serta Kesimpulan yang didapat dalam penelitian ini adalah dengan dibuatnya sistem pendukung keputusan untuk pemilihan (GPU) Graphics Processing Unit mempermudah proses pemilihan (GPU) bagi penggunannya. Kata Kunci : GPU. Simple Additive Weighting (SAW). Sistem Pendukung Keputusan. Abstract Graphics Processing Unit (GPU) is a computer component that works for managing graphics on computer in form of video, picture, animation. Picking Graphics Processing Unit for user is a must thing for maximal performance. This research was maded for building decision-making system for picking Graphics Processing Unit. Method used in this research is (SAW) Simple Additive Weighting. The concept of Simple Additive Weighting is by giving weight on each used criteria then continued with ranking to get the accurate result equal as the weight The conclusion in this research is by making decision-making system for picking (GPU) Graphics Processing Unit are making the process easier picking the GPU for user. Keywords : GPU. Simple Additive Weighting (SAW). Decision Support System. PENDAHULUAN Kebutuhan grafis saat ini merupakan hal yang sering dipertimbangkan oleh banyak orang pada saat akan membeli sebuah komputer maupun membangun sebuah komputer. Namun dikarenakan perkembangannya yang terbilang cepat Graphics Processing Unit (GPU) pun memiliki banyak ragam fitur baru maupun kelebihan pada fitur Ae fitur tertentu yang Fakultas Ilmu Komputer | Universitas Klabat | CORIS | ISSN: 2541-2221 | E-ISSN: 2477-8079 Cogito Smart Journal | VOL. 6 - NO. JUNE 2020 bergantung pada setiap perusahaan yang mengembangkannya. Timbul masalah dalam pemilihan GPU untuk digunakan dalam beberapa kegiatan mulai dari harga yang ditawarkan, kecepatan GPU memproses grafis, memori yang digunakan dan lainnya. Berdasarkan masalah yang timbul maka judul penelitian ini adalah AuPemilihan Graphics Processing Unit Nvidia dan AMD menggunakan Algoritma Simple Additive WeightingAy Yang sekiranya dapat membantu proses pemilihan GPU yang sesuai dengan kebutuhan setiap orang. Penelitian ini terdiri dari beberapa tahapan, yakni pengumpulan data, perancangan sistem, pengujian sistem, pada penelitian ini penulis menggunakan aplikasi berbasis mobile . apat digunakan dimana saj. , aplikasi yang dibuat dalam penelitian ini merupakan sistem pengambilan keputusan yaitu sistem yang saling berinteraksi dengan sistem bahasa, sistem pengetahuan, dan sistem pemrosesan masalah. Algoritma SAW digunakan karena dapat menentukan bobot setiap atribut kemudian dilakukan proses perangkingan yang akan memberikan alternatif terbaik. , atau bisa juga disebut sebagai kombinasi bobot linear atau metode scoring. Aplikasi ini dibuat dengan bahasa pemrograman berorientasi objek bertujuan untuk membuat kode program yang lebih terstruktur, terkelompokkan berdasarkan objek-objek yang terlibat sehingga bagian-bagiannya dapat digunakan untuk pembuatan aplikasi lain. METODE PENELITIAN Metode Analisis dan Perancangan Gambar 1. Metode Pengembangan Sistem Waterfall. Pengembangan aplikasi dalam penelitian ini menggunakan metode waterfall dimana sering juga disebut model sekuensial linier . equential linie. atau alur hidup klasik . lassic life Model air terjun menyediakan pendekatan alur hidup perangkat lunak secara sekuensial atau terurut dimulai dari analisis, desain, pengkodean, pengujian, dan tahap pendukung . HASIL DAN PEMBAHASAN Perancangan Flowchart Flowchart pada gambar 2 menggambarkan alur kerja program, dimana user harus melakukan penginputan bobot, yang kemudian dengan metode SAW akan dipilih data dari basis data yang bobotnya sesuai dengan ketentuan bobot yang dimasukan oleh user dan kemudian Fakultas Ilmu Komputer | Universitas Klabat | CORIS | ISSN: 2541-2221 | E-ISSN: 2477-8079 Cogito Smart Journal | VOL. 6 - NO. JUNE 2020 Gambar 2. Flowchart. Ketika aplikasi dijalankan pengguna diminta untuk memasukan kebutuhan, harga, dan kriteria kebutuhan yang nantinya akan digunakan dalam penentuan bobot. Data masukan akan diproses menggunakan metode SAW dimana pembobotan dan normalisasi akan dilakukan. Dilakukan pengecekan dan menentukan nilai terbaik berdasarkan hasil pengolahan dengan metode SAW , jika hasil tidak didapatkan maka proses akan kembali ke tahap meminta masukan pengguna. Hasil terbaik ditampilkan di aplikasi. Use Case Diagram Fitur dalam aplikasi yang dikembangkan oleh penulis adalah user dapat melakukan halhal seperti pada gambar 3 : User dapat mencari data Ketika user mencari data maka data akan ditampilkan, jika terjadi kesalahan maka akan muncul pesan error. User dapat meminta saran dari sistem Ketika user meminta saran secara otomatis sistem akan melakukan verifikasi data yang diinputkan user dan menampilkan hasil. Fakultas Ilmu Komputer | Universitas Klabat | CORIS | ISSN: 2541-2221 | E-ISSN: 2477-8079 Cogito Smart Journal | VOL. 6 - NO. JUNE 2020 Gambar 3. Use Case Diagram. Activity Diagram Aktivitas yang terjadi dalam sistem ketika user menggunakan fitur pencarian dapat digambarkan seperti pada gambar 4. Ketika akan melakukan pencarian user akan memilih kategori dan memasukan data pencarian berdasarkan kategori, diikuti dengan mengkonfirmasi pencarian. Sistem mengecek apakah kategori telah diatur oleh user, jika tidak maka sistem akan mengatur pencarian berdasarkan nama, diikuti dengan meminta data ke Database akan memberikan data ke sistem untuk ditampilkan. Gambar 4. Activity Diagram Fitur Pencarian. Fakultas Ilmu Komputer | Universitas Klabat | CORIS | ISSN: 2541-2221 | E-ISSN: 2477-8079 Cogito Smart Journal | VOL. 6 - NO. JUNE 2020 Aktivitas yang terjadi dalam sistem ketika user menggunakan fitur Meminta saran dapat digambarkan seperti pada gambar 5. Ketika user meminta saran kepada sistem, user akan diminta untuk memasukan bobot, anggaran, dan menentukan penggunaan GPU, yang diikuti konfirmasi dasar penyaranan. Sistem akan memproses data menggunakan metode SAW, sekaligus meminta data ke database. Database akan memberikan data ke sistem untuk ditampilkan. Gambar 5. Activity Diagram Fitur Penyaranan. Class Diagram Gambar 6. Class Diagram. Class diagram pada gambar 6 menggambarkan bagaimana class AuinputBobotAy memiliki beberapa data yang diperlukan yaitu bobot dengan kategori kebutuhan, kecepatan, memori, dan Fakultas Ilmu Komputer | Universitas Klabat | CORIS | ISSN: 2541-2221 | E-ISSN: 2477-8079 Cogito Smart Journal | VOL. 6 - NO. JUNE 2020 harga kemudian menggunakan beberapa metode yang diambil dari AuMainActivityAy dan AudbConectorAy. ERD (Entity Relationship Diagra. Gambar 7. ERD Basis Data GPU. ERD pada gambar 7 memiliki hubungan sebagai berikut : Setiap satu manufaktur memiliki banyak Ausub_brandAy. Setiap satu Ausub_brandAy memiliki banyak AuseriesAy. Setiap satu AuseriesAy memiliki satu Auperilisan_dan_hargaAy. AuProcessorAy. AuMemoryAy, dan AuClock_speedAy. Implementasi Antarmuka Pengguna Gambar 8. Halaman Utama. Fakultas Ilmu Komputer | Universitas Klabat | CORIS | ISSN: 2541-2221 | E-ISSN: 2477-8079 Cogito Smart Journal | VOL. 6 - NO. JUNE 2020 Halaman utama merupakan halaman dimana pengguna diminta untuk memasukan data yang akan digunakan untuk pengolahan data mulai dari harga . alam rupia. , keperluan penggunaan GPU, tingkat kepentingan kecepatan GPU bagi pengguna dan kepentingan ukuran memori pada GPU. Halaman utama juga dilengkapi dengan fitur pencarian yang dapat dilakukan dalam beberapa kategori diantaranya harga, dan nama manufaktur. Gambar 9. Pemberitahuan Wajib Memasukan Harga. Tombol selesai terdapat pada pojok kanan bawah tampilan dimana ketika pengguna telah selesai melakukan penginputan data dan menekan tombol selesai maka aplikasi akan melakukan pemrosesan data yang telah dimasikan pengguna. Implementasi Metode atau Algoritma Fakultas Ilmu Komputer | Universitas Klabat | CORIS | ISSN: 2541-2221 | E-ISSN: 2477-8079 Cogito Smart Journal | VOL. 6 - NO. JUNE 2020 Gambar 10. Masukan data uji coba. Implementasi algoritma SAW pada aplikasi yang dibuat oleh penulis diterapkan dengan cara sebagai berikut : A Pencarian data berdasarkan harga guna memperkecil jumlah data gpu yang akan dipilih. A Pengguna diminta untuk memilih keperluan penggunaan yaitu gaming dan multimedia, guna menentukan manufatkur sesuai dengan kebutuhan. A Pengguna diminta untuk memilih kepentingan kecepatan, dan ukuran memori untuk dapat menntukan hasil gpu yang dibutuhkan oleh pengguna. Kriteria (C) pada aplikasi ini ditentukan oleh penulis menggunakan radio button sebagai opsi pilihan dengan isi seperti pada gambar 10, yaitu Sangat Penting. Penting. Sedang. Kurang Penting, dan hiraukan. Pada setiap kriteria . ecepatan pemrosesan, ukuran memori, dan waktu rili. penulis menetapkan kriteria kecepatan pemrosesan, dan ukuran memori memiliki nilai maksimal 40% dengan waktu rilis merupakan 100% dikurangi dengan jumlah persen terhadap kecepatan pemrosesan dan ukuran memori guna memastikan bahwa jumlah bobot total adalah Penentuan bobot pada aplikasi ini penulis menggunakan nilai maksimal, minimal, dan median dari data yang telah dicari berdasarkan harga dan manufaktur. Pertama dicari nilai maksimal, dan nilai minimal dari data yang telah diperoleh guna mencari nilai median, kemudian dicari nilai tengah dari nilai maksimal dan median, diikuti nilai median dengan nilai minimal yang nantinya akan digunakan untuk memperoleh bobot. Berikut adalah pseudo-code untuk mencari nilai maksimal dan minimal yang digunakan penulis: Nilai acuan bobot dapat dicari setelah nilai maksimal dan minimal telah didapatkan, dengan penghitungan nilai median dan nilai tengah dari median terhadap minimal dan maksimal dengan rumus dan kode program sperti yang terdapat pada gambar 11: Fakultas Ilmu Komputer | Universitas Klabat | CORIS | ISSN: 2541-2221 | E-ISSN: 2477-8079 Cogito Smart Journal | VOL. 6 - NO. JUNE 2020 // Membuat nilai acuan bobot Batasbc5, batasbc4, batasbc3, batasbc2, batasbc1 : double Maxbc. Minbc : double { Pencatat nilai terbesar, nilai terkecil dari AuBase ClockA. ALGORITMA read ( Maxbc ) { nilai terbesar dari data di basis data } read ( Minbc ) { nilai terkecil dari data di basis data } batasbc5 ! Maxbc . engisi nilai batasbc5 dengan nilai maksima. batasbc4 ! (Maxbc ( (Maxbc Minb. ) /2 batasbc3 ! (Maxbc Minb. /2 { mencari nilai tengah dengan rumus media. batasbc2 !. atasbc3 Minb. /2 batasbc1 ! Minbc Gambar 11. Pseudo-code Membuat Nilai Acuan Bobot. Bobot dibuat setelah nilai acuan didapatkan, dengan pembobotan dengan menggunakan pengondisian sperti yang terdapat pada gambar 12: //Membuat bobot bc batasbc5, batasbc4, batasbc3, batasbc2, batasbc1 : double baseclock : Array of double . ata dari basis dat. bobotbc : Array of Integer i : Integer {Pencacah banyaknya pengulanga. JumlahRow : Integer { Jumlah baris / record pada basis data } ALGORITMA read( jumlahRow ) {Membaca banyaknya baris dari basis dat. read( baseclock[] ) {Membaca data dari basis dat. for i ! 0 to jumlahRow do if baseclock. >= batasbc4 then bobotbc. ! 5 else if baseclock. >= batasbc3 then bobotbc. ! 4 else if baseclock. >= batasbc2 then bobotbc. ! 3 else if baseclock. >= batasbc1 then bobotbc. ! 2 else bobotbc. ! 1 end if end for Gambar 12. Pseudo-code Membuat Nilai Bobot. Penentuan nilai bobot pada aplikasi ini dibagi menjadi 5, dimana 5 sebagai nilai terbaik, dan 1 sebagai nilai terendah dimana jika data yang didapat lebih besar sama (>=) dengan batas 4 . ilai tengah dari maksimal dan media. maka bobot sama dengan 5, jika data yang didapat lebih kecil dari batas 4, maka dilakukan pengujian apakah data yamg didapat lebih besar sama Fakultas Ilmu Komputer | Universitas Klabat | CORIS | ISSN: 2541-2221 | E-ISSN: 2477-8079 Cogito Smart Journal | VOL. 6 - NO. JUNE 2020 dengan (>=) batas 3, jika iya maka bobot sama dengan 4, jika tidak dilakukan lagi pengujian dengan batas 2. Jika lebih besar batas sama dengan 2 maka bobot sama dengan 3, jika tidak maka data akan dibandingkan lagi dengan batas 1 jika nilainya lebih besar sama dengan (>=) batas 1 maka bobot sama dengan 2, selain itu bobot sama dengan 1. Setelah nilai bobot didapatkan, dicarilah nilai maksimal dari bobot yang ada guna untuk dilakukan normalisasi. Normalisasi kriteria dapat dilakukan dengan menggunakan rumus : yc!" = $%&!" ! $!" yc!" = untuk j = benefit . $!'! $!" #!" Untuk j= cost . Dalam penelitian ini penulis hanya mencari benefit menggunakan rumus yc!" = $%&!" ! $!" untuk j = benefit, menggunakan algoritma sebagai berikut : // Normalisasi C MemorySize. Release : Array of double . ata dari basis dat. bobotbc, bobotms,bobotrd : Array of Integer { nilai bobot terhadap data di basis data } maxbobotbc, maxbobotms, maxbobotrd : Integer { nilai maksimal dari bobot pada setiap data } i : Integer {Pencacah banyaknya pengulanga. JumlahRow : Integer { Jumlah baris / record pada basis data } normCbc, normCms, normCrd : Array of Integer ALGORITMA for i ! 0 to jumlahRow do normCbc. ! bobotbc. / maxbobotbc normCms. ! bobotms. / maxbobotms normCbrd. ! bobotrd. / maxbobotrd end for Gambar 13. Pseudo-code Normalisasi C. Normalisasi (C) akhir dilakukan dengan pengalian hasil normalisasi (C) terhadap kriteria yang telah ditentukan di awal, pada kasus ini penulis menggunakan kriteria kecepatan pemrosesan = 40% = 0. 4, ukuran memori = 40% = 0. 4, dan waktu rilis = 20% = 0. 2, maka hasil normalisasi dikalikan dengan nilai kriteria yang ada seperti pada pseudo-code sebagai berikut : // Normalisasi C Akhir i : Integer {Pencacah banyaknya pengulanga. JumlahRow : Integer { Jumlah baris / record pada basis data } normCbc, normCms, normCrd : Array of Integer { hasil normalisasi C } ALGORITMA for i ! 0 to jumlahRow do normCbc. ! normCbc. *InputKecepatan { pengalian normalisasi C dengan inputan kriteria } normCms. ! normCbc. *InputMemori normCbrd. ! normCbc. *InputRilis end for Gambar 14. Pseudo-code Normalisasi C Akhir. Fakultas Ilmu Komputer | Universitas Klabat | CORIS | ISSN: 2541-2221 | E-ISSN: 2477-8079 Cogito Smart Journal | VOL. 6 - NO. JUNE 2020 Penentuan data GPU terbaik dapat ditentukan dengan mencari nilai terbesar dari hasil pengalian data normalisasi dengan kriteria, diikuti dengan penjumlahan masing-masing kriteria untuk mencari nilai terbaik, setelah penjumlahan nilai tersebut dicari nilai terbaik dengan cara mencari nilai terbesar dari data yang ada seperti pada pseudo-code sebagai berikut: // Penentuan Hasil Terbaik i : Integer {Pencacah banyaknya pengulanga. JumlahRow : Integer { Jumlah baris / record pada basis data } normCbc, normCms, normCrd : Array of Integer { hasil normalisasi C } A. : Array of Integer terbaik : Integer ALGORITMA for i ! 0 to jumlahRow do A. ! normCbc. normCms. normCbrd. end for terbaik ! A. engasumsikan nilai sama dengan nilai awal A} for i ! 0 to jumlahRow do if A. > terbaik then terbaik ! A. end if end for Gambar 15. Pseudo-code Penentuan Hasil Terbaik. KESIMPULAN Berdasarkan hasil penelitian yang dilakukan oleh penulis maka penulis menarik kesimpulan sebagai berikut : Dengan adanya aplikasi pemilihan graphics processing unit nvidia dan amd menggunakan algoritma SAW (Simple Additive Weightin. berbasis mobile proses pemilihan GPU dapat dilakukan. Dengan adanya aplikasi pengguna dimudahkan untuk mencari GPU yang sesuai dengan kegunaan dan anggaran yang dimiliki. Penggunaan tipe data double dapat menimbulkan masalah dalam proses pemilihan alternatif akhir. SARAN Berikut adalah saran yang penulis usulkan untuk pengembangan dikemudian hari adalah sebagai berikut : Hasil pengolahan terhadap nilai terbaik kedepannya perlu ditambah tingkat akurasinya dengan mengatasi masalah terhadap tipe data double dimana angka spesifik di belakang koma tidak terdapat kelebihan jumlah hasil perhitungan. Tampilan aplikasi dikembangkan menjadi lebih dinamis dan lebih mudah digunakan oleh pengguna. Fitur pencarian dibuat lebih fleksibel terhadap masukan pengguna sehingga pengguna dapat lebih mudah mencari data yang sesuai. Fakultas Ilmu Komputer | Universitas Klabat | CORIS | ISSN: 2541-2221 | E-ISSN: 2477-8079 Cogito Smart Journal | VOL. 6 - NO. JUNE 2020 DAFTAR PUSTAKA