BAB II DASAR TEORI GPU Computing

dokumen-dokumen yang mirip
1. PENDAHULUAN 1.1. LATAR BELAKANG MASALAH

BAB I PENDAHULUAN. Merancang aplikasi Paralel Processing yang diimplementasikan dengan penggunaan Computer-Unified-Device-Architecture (CUDA).

Penggunakan lebih dari satu CPU untuk menjalankan sebuah program secara simultan. Tujuan Utama Untuk meningkatkan performa komputasi.

ARSITEKTUR DAN ORGANISASI KOMPUTER. NVIDIA SLI (Scalable Link Interface) Disusun Oleh: Nim : Nama : Ikhlas Adi Putra Kelas : 21/Pagi

Bab I Pengenalan Sistem Operasi. Apa yang dimaksud Sistem Operasi?

TUGAS ARSIKOM Nvidia SLI

PENGANTAR KOMPUTASI MODERN

10. PARALLEL PROCESSING

MULTI GPU : CROSSFIRE

CPU-Z. Nama : Diemas Egy P. Sekolah : SMKN 5 Malang

Nama : Muhamad Ridho Saputra NIM : Prodi : Tehnik Informatika Elearning bus

Organisasi & Arsitektur. Komputer. Org & Ars komp Klasifikasi Ars Komp Repr Data

2-1. Apa itu Komputer?? HARDWARE 1 PERANGKAT SISTEM KOMPUTER. Erwin Harahap

Paralelisasi Transformasi Fourier pada Arsitektur General Purpose Graphic Processing Unit Untuk Klasifikasi Alat Musik Dengan Instrumen Solo

Perkembangan Memory di Processor AMD (Advanced Micro Devices)

MEMPERKENALKAN RANGKAIAN PROSESOR SERI INTEL CORE X BARU

BAB 1 PENDAHULUAN. Pengukuran overhead..., Ida Nurhaida, FT UI, 2009

VGA Terbaru dan Tercanggih di Jagat Raya, Nvidia GeForce GTX 780 Ti

Nama : Muhammad Fadlan NIM : Kelas : 21 Prodi : Teknik Informatika Universitas Mercu Buana Yogyakarta

MENGENAL NVIDIA VGA GeForce GTX 1080

MULTITASKING DENGAN MENGGUNAKAN NVIDIA CUDA. oleh Agustinus Ardiyan Abi Ravinda NIM :

ARSITEKTUR & ORG. KOMPUTER Perkembangan Nvidia SLI (Scalable Link Interface)

BAB I PENDAHULUAN. seiring perkembangan teknologi mikroprosesor, proses komputasi kini dapat

SAHARI. Selasa, 29 September

Pendeteksian Kemacetan Lalu Lintas dengan Compute Unified Device Architecture (CUDA)

BAB I PENDAHULUAN 1.2. Latar Belakang Masalah

ARSITEKTUR SISTEM. Alif Finandhita, S.Kom, M.T. Alif Finandhita, S.Kom, M.T 1

Pentium Quad Core dan Sejarahnya

BAB IV PENGUJIAN DAN ANALISIS

Struktur Sistem Komputer

BAB I PENDAHULUAN. 1.1 Latar Belakang

Konsep Organisasi dan Arsitektur Komputer (Pertemuan ke-2)

PERKEMBANGAN MEMORI DI PROSESOR INTEL ARSITEKTUR KOMPUTER & ORGANISASI

STRUKTUR CPU. Arsitektur Komputer

PENGANTAR TEKNOLOGI INFORMASI. Miftahul Huda, S.Pd STIE Putra Bangsa

Mengenal VGA Card. Deris Stiawan FASILKOM UNSRI

PEMERINTAH KABUPATEN GIANYAR DINAS PENDIDIKAN PEMUDA DAN OLAH RAGA SMK NEGERI 1 TAMPAKSIRING Alamat : Jl. DR.Ir. Soekarno, Tampaksiring

BAB II LANDASAN TEORI. informasi menjadi sebuah teks yang tidak dapat dibaca (Ferguson dkk, 2010).

BAB III PERANGKAT KERAS PEMROSESAN

TUGAS ARSITEKTUR DAN ORGANISASI KOMPUTER ATI CROSSFIRE

Mengenal Jenis-jenis VGA Komputer

Struktur dan Fungsi CPU. Ptputraastawa.wordpress.com

Pengantar sistem komputer

BAB I PENDAHULUAN. Tsunami ini merupakan kejadian alam yang dipengaruhi oleh adanya aktifitas

Introduction to Computer Architecture. Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 01 --

1. BAB I PENDAHULUAN. efek. Penggunaan visual efek untuk film di sebabkan lebih mudah di arahkan dan

Struktur Sistem Komputer

Berbagai Macam Bentuk Komputer

Pengenalan Komputer. Mahasiswa dapat menjelaskan definisi komputer,jenis generasi perkembangannya. Nawindah,S.Kom, M.Kom. Modul ke: Fakultas FT

Modul ke: Aplikasi Kompoter. Sistim Operasi. Fakultas FTPD. Giri Purnama, S.Pd, M.Kom. Program Studi Teknik Sipil

::

Makalah tentang ATI dan Crossfire

KOMPONEN PC MODERN. Tulisan ini disusun untuk memenuhi tugas mata kuliah Praktikum Organisasi & Arsitektur Komputer

BAB I PENDAHULUAN. penggunaan teknologi dalam menunjang kehidupan sehari - hari. berdasarkan data yang dihimpun oleh Gartner International Data

ATI CROSSFIRE. Disusun oleh : NIM : Nama : Muslih Pamujianto. Kelas : 21. Prodi : Teknik Informatika FAKULTAS TEKNOLOGI INFORMATIKA

Analisis Kinerja Matrix Multiplication Pada Lingkungan Komputasi Berkemampuan Tinggi (Cuda Gpu)

SISTEM OPERASI. Belajar SO?

Apa itu Mikrokomputer?

Sistem Operasi dalam bahasa Inggrisnya disebut Operating System, atau biasa di singkat dengan OS.

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

PARALELISASI TRANSFORMASI WAVELET DISKRIT MENGGUNAKAN ARSITEKTUR CUDA PADA GRAPHIC PROCESSING UNIT UNTUK DE-NOISING CITRA

Perangkat Keras (Hardware) Komputer dan Fungsinya. Didiek Prasetya M.sn

Hanif Fakhrurroja, MT

BAB 1 PENDAHULUAN. 1.1 Latar Belakang. 1.2 Rumusan Masalah

Miyarso Dwi Ajie Otomasi Perpustakaan Pertemuan #7

MODUL 1 - MENGENAL HARDWARE

Modul Pengantar Aplikasi Komputer (PAK 240) Prodi S1 P.Akuntansi UNY Pengampu : Annisa Ratna Sari, S.Pd PENGENALAN KOMPUTER

PROSEDUR PARALELISASI PERKALIAN MATRIKS PADA GRAPHICS PROCESSING UNIT (GPU)

Cloud Computing Windows Azure

APLIKASI KOMPUTER. Pengenalan, Sejarah Komputer dan Sistem Komputer. Ida Farida, M.Kom. Modul ke: Fakultas MKCU. Program Studi MKCU

BAB III DESAIN DAN IMPLEMENTASI SISTEM

DCH1B3 Konfigurasi Perangkat Keras Komputer

Mengenal Lebih Dalam Kartu Grafis Pada Komputer

Perkembangan Mikroprosesor

1. PROCESSOR / CPU ( CENTRAL PROCESSING UNIT)

Pengantar Organisasi Komputer

Ukuran semakin kecil, fleksibilitas meningkat Daya listrik lebih hemat, panas menurun Sambungan sedikit berarti semakin handal / reliable

Pertemuan ke - 5 Struktur CPU

TUGAS MATA KULIAH ARSITEKTUR & ORG. KOMPUTER PERKEMBANGAN MEMORY DI PROCESSOR BERBASIS INTEL

APTI TEKNOLOGI dan CROSSFIRE

PERTEMUAN 1 APLIKASI KOMPUTER KONTRAK PERKULIAHAN PENGENALAN KOMPUTER RANGGA RINALDI, S.KOM, MM. Modul ke: Fakultas Desain dan Seni Kreatif

MODUL 2 KOMPONEN, LAYANAN SISTEM OPERASI M. R A J A B F A C H R I Z A L - S I S T E M O P E R A S I - C H A P T E R 2

Pengelolaan Keterbatasan dan Pencirian

BAB I PENDAHULUAN. aktivitas-aktivitas tersebut dibutuhkan peralatan yang dapat membantu mereka untuk

Pendahuluan. Hardware/Software/ Teknologi Informasi Tipe-tipe Komputer Bagian-bagian Utama PC (Personal Computer) Computer Performance

Sejarah perkembangan RAM

Perkembangan Mikroprosesor dari Waktu ke Waktu

SISTEM OPERASI TERDISTRIBUSI

prosesor berarsitektur "Core 2" dengan 4 inti

COMPUTER HARDWARE NYOMAN SURYADIPTA, ST, CCNP

Sistem Informasi Manajemen Berbasis Komputer (Computer-Based Management Information System) Slamet Lestari

Pengertian Hardware dan Pengenalan Jenisnya

Struktur CPU 3/23/2011

MENGENAL PROCESSOR CHIPSET PADA ANDROID

SEJARAH MICROPROCESSOR

PAPER MEMORI PROCESSOR AMD GENERATION

BAB 3 ANALISIS DAN PERANCANGAN

BAB I PENDAHULUAN. 1.1 Latar Belakang

Central Processing Unit

MAKALAH AMD ATI CROSSFIRE

Transkripsi:

BAB II DASAR TEORI Bab ini berisi tentang dasar teori dari setiap metode computing yang berhubungan dengan perancangan skripsi antara lain tentang GPU Computing menggunakan CUDA, CPU Computing, Cluster Computing. 2.1. GPU Computing Graphic Processing Unit (GPU) berfungsi sebagai render grafis terdedikasi dalam kesatuan sistem hardware PC atau Notebook. GPU bisa berada pada Video Card khusus (VGA Card) atau terintegrasi dalam Motherboard berupa Integrated GPU. GPU berfungsi untuk mengolah dan memanipulasi grafis pada CPU (Central Processing Unit), untuk nantinya ditampilkan dalam bentuk Visual Grafis pada Monitor (output). Pada saat ini kegunaan dari GPU tidak hanya digunakan dalam pemrosesan yang berhubungan dengan grafis, tetapi digunakan juga sebagai Processing Unit, dimana dalam hal ini GPU akan membantu CPU dalam mengolah data [2]. 2.1.1. CUDA CUDA adalah arsitektur komputasi paralel yang dikembangkan oleh NVIDIA. CUDA adalah mesin komputasi dalam pemrosesan grafis NVIDIA unit atau GPU yang dapat diakses oleh pengembang perangkat lunak melalui varian dari bahasa pemrograman standar industri. CUDA merupakan kumpulan program-program yang menerjemahkan teks dalam bentuk bahasa komputer berupa source language/source code, ke dalam bentuk bahasa komputer yang lain (target language/object code). Arsitektur CUDA memungkinkan GPU (yang telah support CUDA) menjadi arsitektur terbuka seperti layaknya CPU. Hanya, tidak seperti CPU, GPU memiliki arsitektur banyak-inti yang paralel. Setiap inti memiliki kemampuan untuk menjalankan ribuan thread secara simultan. Jika aplikasi yang dijalankan sesuai dengan arsitektur ini, GPU dapat menyediakan keuntungan yang lebih besar dari segi performa proses aplikasi tersebut. 7

Adapun keunggulan dari CUDA [6, h. 3] : CUDA menggunakan bahasa C standar, sehingga mudah dipelajari. Data Transfer antara CPU dan GPU sangat cepat sehingga dapat mengurangi latency. Mempunyai shared memory pada setiap multiprocessor dengan kecepatan akse tinggi. Hemat biaya dan daya listrik. 2.1.2. GPU yang Memiliki Teknologi CUDA [1] 2.1.2.1. NVIDIA TESLA GPU jenis ini digunakan pada ( High-Performance Computing ) HPC seperti komputasi dalam bidang biologi dan kimia, seismic processing, modeling cuaca dan iklim, pemrosesan gambar, video, dan sinyal, workstation, data center, komputasi keuangan dan analisis data. Tesla mengimplementasikan desain arsitektur dari Kepler compute yang memiliki beberapa fitur yaitu : Streaming Multiprocessor Meningkatkan kemampuan performa GPU 3 kali lipat daripada generasi akhir GPU NVIDIA yang masih menggunakan arsitektur fermi. Dynamic Parallelism Memungkinkan thread GPU secara otomatis memunculkan thread baru. Hyper-Q Memperbolehkan beberapa core dari CPU secara simultan menggunakan core CUDA. Tesla Accelerator Meningkatkan kecepatan proses CPU sampai 10 kali dan termasuk teknologi GPUBoost yang memungkinkan power headroom dapat dikonversi menjadi user-controlled performance boost. Fitur dan keuntungan dari NVIDIA Tesla yaitu : Memory Error Protection Memenuhi persyaratan penting untuk akurasi dan keandalan komputasi di data center dan super komputer center. 8

System Monitory Mengintegrasikan subsistem dari GPU dengan system monitoring dan manajemen host. Sehingga IT staff dapat mengatur processor GPU dalam sistem komputasi. L1 and L2 chaces Mengakselerasi algoritma dimana alamat data belum diketahui sebelumnya. Asynchronous Transfer with dual DMA engines Meningkatakan performa sistem dengan mentransfer data melalui PCIe bus sementara computing cores mengolah data lainnya. Tesla GPUBoost End-user dapat mengubah daya headroom menjadi clock yang lebih tinggi. Fleksibel Programming environment Dapat memilih OpenACC, CUDA toolkit untuk C, C++, atau Fortan untuk membuat aplikasi paralel. Software Features yang hanya terdapat pada NVIDIA Tesla : Performance Driver for Windows - Driver software NVIDIA Tesla untuk Windows. - Memungkinkan remote desktop dan Windows service. - Mengurangi overhead pada saat menjalankan kernel. - Dapat digunakan untuk CUDA C / C++. GPU Monitoring Untuk mengetahui : - Temperatur GPU - Kecepatan kipas angin GPU. - Informasi ECC GPU Cluster Management - Mode Eksklusif : memungkinkan akses aplikasi eksklusif pada GPU tertentu. - GPU visible Devices : Environment variable memungkinkan cluster management software untuk membatasi GPU Tesla yang dapat digunakan oleh aplikasi. NVIDIA GPUDirect V1.0 9

Memungkinkan komunikasi yang lebih cepat antara GPU dengan adaptor InfiniBand. NVIDIA GPUDirect V2.0 Komunikasi peer-to-peer antara GPU. 2.1.2.2. NVIDIA Geforce GPU seri Geforce lebih menekankan penggunaannya pada pengembangan dan optimasi game, pengolahan video, dan pengolahan gambar. Fitur fitur yang dimiliki seri Geforce dan biasa digunakan oleh end-user adalah : 3D Vision memberikan citra 3D yang stereoscopic untuk gaming, video, dan pengolahan foto. 3D Vision Surround memperluas bidang pandang dalam tiga monitor 3D untuk game dengan mode panorama atau game yang mendukung multi monitor. 4K revolutionises meningkatkan 4 kali lebih banyak pixel yang digunakan. GPU Boost 2.0 mengeluarkan postensi kekuatan dari kartu grafis komputer, memaksimalkan frame rate pada game. CUDA memungkinkan peningkatan dalam kinerja komputasi dengan memanfaatkan kekuatan GPU yang berjalan di PC. Battery Boost adalah mode ultra efisien yang mampu menampilkan frame rate sama seperti 30 FPS, tetapi dengan 2 kali daya baterai yang lebih efisien. Optimus Teknologi dapat mengoptimasi Laptop, pada saat membutuhkan performa yang tinggi, GPU akan menyesuaikan, sehingga umur baterai lebih lama PhysX membuat GPU dapat melakukan perhitungan physics yang kompleks. Meningkatan efek partikel dan animasi dalam game. 2.1.2.3. NVIDIA QUADRO Memiliki fitur hardware dan software yang hampir sama dengan NVIDIA Tesla, dapat digunakan pada workstation dan GPU jenis ini juga digunakan dalam membuat desain arsitektur, pengolahan grafis tingkat tinggi dan juga pengolahan data. Quadro dapat dikombinasikan dengan Tesla dengan menggunakan Multi GPU technology dalam satu sistem sehingga dapat mengakselerasi komputasi dan 10

visualisasi secara dramatis. Dengan menggunakan NVIDIA Enterprise Management Tollkit Quadro dapat memonitor dan mengatur secara remote. 2.1.2.4. NVIDIA NVS GPU ini lebih mengedepankan pada pengolahan visualisasi dari grafis layar monitor. NVS digunakan pada multi display yang membutuhkan resolusi tinggi dan memprosesnya menjadi view panorama. Fitur dan keuntungan dari NVIDIA NVS adalah : NVIDIA Unified Architecture Unified architecture pertama yang di desain untuk mengalokasi sumber daya dari GPU secara dinamis untuk mengoptimasi hasil. PCI Express 2.0 Compliance Meningkatkan data Transfer rate dua kali lipat sampai 5 GT/detik untuk bandwidth rata rata 16 GB/detik yang berjalan dua arah ( 8 GB/detik pada masing masing arah ). Kompatibilitas dengan Arsitektur Standar Industri Kompatibel dengan arsitektur mikroprosesor x86 32 dan 64 bit dan sistem operasi dari intel / AMD dan Microsoft / Linux. Multy-Display Experience dengan NVIDIA Mosaic Technology Memungkinkan cakupan taskbar yang halus serta membuat skala untuk aplikasi apapun hingga hingga delapan display. Teknologi ini hanya di dukung Windows 7, Windows 8, dan Linux. NVIDIA CUDA Arsitektur komputasi paralel yang dapat meningkatakan performa komputasi dengan memanfaatkan GPU. 2.1.2.5. NVIDIA Tegra Chipset Tegra yang pertama mengimplementasikan CUDA adalah seri K1. Tegra K1 dibangun pada arsitektur NVIDIA Kepler. Teknologi ini adalah yang pertama kalinya di konsol kelas mobile. Pada mobile processor jenis ini berfungsi sebagai pengolah data utama, tidak seperti pada PC yang berjalan dengan CPU utama. 11

2.2. Cluster Computing Cluster Computing merupakan sebuah jenis sistem pemrosesan paralel atau sistem yang terdistribusi, terdiri dari kumpulan komputer yang berdiri sendiri yang saling bekerja sama sebagai sumber daya terpadu. Berikut ini adalah beberapa komponen penting komputer cluster: Beberapa komputer. Sistem operasi. Jaringan. Infrastruktur cluster. Pemrograman Paralel. Aplikasi. Keuntungan dari Cluster Computing : 1. High Performance - Dengan beberapa sistem yang saling berhubungan, proses kinerja tinggi dapat dicapai dengan menggunakan clustering dimana mesin bekerja. 2. High Availability - Dengan beberapa sistem yang saling berhubungan, hilangnya salah satu sistem hanya memiliki dampak minimal. Sistem kunci dan komponen - komponennya dapat digandakan sehingga sistem backup dapat mengambil beban setelah terjadi kegagalan. 3. High Reliability - Jika satu mesin terjadi kegagalan, sistem secara keseluruhan tidak akan berhenti seluruhnya. 4. Skala Ekonomis - Kekuatan pendorong sebenarnya di balik trend desentralisasi adalah ekonomi. Sistem terdistribusi memiliki rasio harga yang lebih baik. 5. Upgrade & Skalabilitas - Bila daya komputer tambahan diperlukan, beberapa CPU dapat ditambahkan ke jaringan dan perangkat disalin dari komputer lain dalam proses yang sederhana. Dengan sistem terpusat, upgrade mesin mainframe membutuhkan biaya yang mahal serta kompleks. 12

6. Teknologi pada saat ini Cluster dapat dibangun dari seribu CPU yang menghasilkan 20.000 Million Instructions Per Second (MIPS), sedangkan sistem terpusat yang sebanding saat ini belum ditemukan.. Sementara proses manufaktur saat ini akan maju dan menghasilkan sistem yang lebih cepat dan lebih cepat, paralelisasi adalah metode alternatif lebih hemat biaya. 7. Aplikasi - Beberapa aplikasi yang inheren di pasaran, seperti Geographically Diverse Operations atau beberapa prosesor yang bekerja secara paralel seperti server aplikasi multi-threaded, yang berjalan pada sistem operasi multi-tasking, dimana setiap thread yang ada dapat dialokasikan oleh processor itu sendiri sampai waktu yang ditentukan sama seperti beberapa thread yang berjalan pada masing-masing prosesor. Dalam skenario ini server akan memiliki waktu respon lebih cepat, karena pekerjaan dapat dilakukan secara paralel [6, h. 21 26] : 2.2.1. MPI Message Passing Interface (MPI) adalah bahasa komunikasi protokol yang digunakan untuk parallel komputer. MPI menyediakan source-code portabilitas program message-passing yang ditulis dalam bahasa C di berbagai arsitektur. Sebuah proses MPI berkomunikasi dengan proses MPI lain dengan memanggil MPI routines. Tujuan utama MPI adalah [8, h. 1-2] : Untuk menyediakan source-code yang portabel. Untuk memungkinkan implementasi yang efisien seperti pemrosesan paralel. Keuntungan MPI [7, h. 2 4] : - Memberikan fleksibilitas dalam pengembangan kode. - Dapat di implementasi dengan environment yang berbeda beda. - Support dengan bahasa pemrograman C - Mudah diimplementasi dengan PC user. - Menyediakan komunikasi antarmuka yang handal. 13

Aplikasi yang mendukung MPI : - MPICH2 - MVAPICH - OpenMPI - Microsoft HPC Management 2.3. CPU Computing CPU merupakan komponen terpenting dari sistem komputer,. CPU adalah komponen pengolah data berdasarkan instruksi instruksi yang diberikan kepadanya. Dalam mewujudkan fungsi dan tugasnya, CPU tersusun atas beberapa komponen sebagai bagian dari struktur CPU, tersusun atas beberapa komponen, yaitu [10] : Arithmetic and Logic Unit (ALU), bertugas membentuk fungsi fungsi pengolahan data komputer. ALU sering disebut mesin bahasa (machine language) karena bagian ini mengerjakan instruksi instruksi bahasa mesin yang diberikan padanya. Seperti istilahnya, ALU terdiri dari dua bagian, yaitu unit arithmetika dan unit logika boolean, yang masing masing memiliki spesifikasi tugas tersendiri. Control Unit, bertugas mengontrol operasi CPU dan secara keselurahan mengontrol computer sehingga terjadi sinkronisasi kerja antar komponen dalam menjalankan fungsi fungsi operasinya. Termasuk dalam tanggung jawab unit kontrol adalah mengambil instruksi instruksi dari memori utama dan menentukan jenis instruksi tersebut.. 14