Komputasi Dengan GPU

Bagi pengguna komputer awam yang biasanya bekerja dengan word processor kemungkinan tidak terlalu memerlukan pengetahuan lebih mengenai Komputasi GPU. Namun, bagi pengguna komputer yang biasa berkutat dengan pemrosesan data berukuran besar (mass computing) sekiranya hal ini menjadi tambahan yang penting.

Dahulu orang hanya mengetahui bahwa “tukang proses” dalam sebuah komputer itu CPU. Seiring perkembangan kartu grafis yang ternyata inovasinya sangat luar biasa, kini satu buah kartu grafis bisa melakukan komputasi khusus yang jauh lebih cepat dibanding CPU. Kartu grafis keluaran tahun 2000 keatas telah mengimplementasikan multicore dalam sistemnya. Hingga saat ini telah banyak kartu grafis yang memiliki jumlah core puluhan bahkan ada yang hingga 500 core lebih. Jumlah core yang banyak ini tentu juga berimbas pada kecepatan dalam melakukan komputasi khusus untuk menangani grafis.

Bersamaan dengan perkembangan kecepatan pemrosesan yang ada dalam sebuah kartu grafis, berkembang pula penggunaan GPU untuk melakukan komputasi secara umum (general purpose) semacam pemrosesan data float baik single precission maupun double precission. Tentunya pada saat itu orang dalam membuat program selain harus menguasai bahas pemrograman dasar dan pemrograman parallel juga harus mempelajari pemrograman yang berfungsi untuk mengontrol GPU supaya dapat melakukan proses yang massive. Pada saat itu berkembang library “bahasa grafis” semacam OpenGL, OpenCL, DirectX, dan beberapa library lainnya sehingga mempermudah pemrogram untuk membuat perintah terhadap kartu grafis.

Apa sebenarnya yang membuat GPU bekerja lebih cepat? Kemampuan GPGPU (General Purpose GPU) biasanya berdasarkan kecepatan operasi data float dalam satu detik atau dikenal dengan Floating Operation Per Second (FLOPS). Yang membuat GPGPU sangat cepat dalam mengeksekusi perintah adalah jumlah prosesor dalam satu buah kartu grafis dan bandwidth memory yang menghubungkan RAM kartu grafis dan prosesor grafis yang besar. Sebagai perbandingan pada mode single precission CPU Intel Core i7 2600K (4 core 8 thread) memiliki kecepatan tidak lebih dari 84 GigaFLOPS (tomshardware) sedangkan kartu grafis Nvidia GTX570 memiliki kecepatan lebih dari 1400 GigaFLOPS (wikipedia.org). Kalau dihitung maka GPU 16 kali lebih cepat dari CPU (GPU dan CPU yang dibandingkan pada kisaran harga yang sama).

Meski GTX570 tidak masuk dalam jajaran GPGPU, tetapi sudah bisa dilihat bahwa GPU ini memiliki kemampuan komputasi 16x lebih cepat dibanding CPU Intel Core i7 2600K.

Produsen kartu grafis NVIDIA telah mengembangkan platform CUDA bagi pengembang software dalam membuat aplikasi yang support GPU Computing supaya lebih mudah dalam mengimplementasikan teknologi GPU computing. CUDA saat ini telah support bahasa pemrograman C, C++, Fortran, OpenCL, dan DirectX. Selain pengembangan CUDA, NVIDIA telah membuat kartu grafis khusus untuk GPGPU dalam kelas NVIDIA TESLA.

Penggunaan GPGPU mulai digunakan oleh pengembang software khusus misal untuk menangani pemrosesan data seismik dan visualisasinya, pemodelan tatasurya, pemodelan fluida, serta pemodelan fisis dan matematis lain yang memerlukan sumberdaya tinggi untuk komputasi massive.

Author: Muh.Ahsan

Geoscience application specialist, technical evangelist, music lover, movie buff, and active blogger.

Tinggalkan Tanggapan

This site uses Akismet to reduce spam. Learn how your comment data is processed.