Jumat, 29 Juni 2018

PARALEL COMPUTING (CUDA)


Nama : Rizky Riyadi Hidayat
Kelas : 4IA21
Mata Kuliah : Pengantar Komputasi Modern
Dosen : Indra Adi Permana




1


Teknologi CUDA sebenarnya barawal dari riset yang dilakukan NVIDIA mengenai GPGPU (General-Purpose Computing on Graphics processing Unit). Riset tersebut akhirnya melahirkan CUDA (Compute Unified Device Architecture) suatu arsitektur pemrosesan paralel yang diimplementasikan ke dalam GPU buatan NVIDIA, baik untuk seri GeForce, Quadro, maupun Tesla.

Sejak awal kemunculannya sampai saat ini, CUDA mengalami perkembangan yang cukup pesat. Hal ini bisa dilihat dari perbandingan banyaknya riset berbasis CUDA yang dilakukan dan juga banyaknya CUDA SDK yang didownload dalam dua tahun terakhir. Tahun lalu, hanya ada 67 riset mengenai CUDA dan juga 293.000 CUDA SDK yang didownload. Jumlah itu meningkat jauh untuk tahun ini menjadi 334 riset mengenai CUDA dan juga 668.000 CUDA SDK yang didownload.

Selain itu, perkembangan CUDA juga ditandai dengan meningkatnya dukungan aplikasi dan juga berbagai perusahaan terhadap penggunaan CUDA, diantaranya:
Hadirnya compiler CUDA-x86 hasil kerja sama NVIDIA dengan Portland Group. Compiler CUDA-x86 memungkinkan developer untuk membuat aplikasi dengan memanfaatkan CUDA untuk beragam platform yang tersedia.
Simulator biologis, AMBER, pada versi terbarunya, AMBER 11, sudah mendukung pemanfaatan multi GPU dan mendukung CUDA. NVIDIA mengumumkan bahwa dengan menggunakan IBM Cluster yang dilengkapi dengan 8 GPU Fermi yang sudah mendukung CUDA, simulator bisa menghasilkan perhitungan 52nanosecond dalam sehari, lebih tinggi bila dibandingkan dengan cluster terkuat AMBER saat ini, KRAKEN, hanya bisa menghasilkan 46nanosecond dalam sehari. Sebagai informasi tambahan, satu simulasi langkah manusia membutuhkan jutaan nanosecond.
ANSYS, perusahaan yang memiliki spesialisasi di bidang desain dan simulasi produk yang memiliki beberapa klien ternama seperti Boeing dan P&G, juga memanfaatkan CUDA untuk melakukan simulasi. Satu proses simulasi, misalnya simulasi kemungkinan masalah yang terjadi pada roda pesawat terbang, membutuhkan kemampuan proses yang tinggi. Dengan menggunakan GPU yang dilengkapi dengan CUDA, proses panjang tersebut dapat diselesaikan dalam waktu setengah dari waktu normal yang diperoleh dengan menggunakan CPU termutakhir.
Cara kerja GPU

Kenapa kartu grafis dibutuhkan? Karena di dalamnya ada GPU (Graphical Processing Unit). Semacam prosesor yang ada di dalam kartu grafis.

Bedanya dengan CPU (prosesor yang ada di motherboard), GPU didesain khusus untuk mengolah data gambar/grafis agar bisa tampil ke monitor dengan cepat dan tepat. Karena GPU mempunyai kemampuan khusus, yaitu melakukan perhitungan matematika yang kompleks untuk membentuk gambar (geometri) dalam ruang 3-D, yang tidak mungkin ditangani oleh CPU.

Contoh saja dalam game. Ketika kamu memainkan karakter game dari satu titik ke titik lain, atau melakukan sebuah aksi.. bukankah ruangnya, tata cahayanya, warnanya, dan objek-objek di dalamnya harus berubah? Di belakangnya ada rumus-rumus matematika yang sangat kompleks yang memperhitungkan sistem koordinat, vektor, jarak, dan hukum-hukum fisika agar terbangun sebuah realitas tiga dimensi. Dan semuanya harus berjalan secara realtime.

Begitupun dalam software editing, compositing, dan 3D. Juga dibutuhkan formulasi yang sangat kompleks.

Ini semua hanya bisa dilakukan oleh GPU. Kenapa?

Secara arsitektur, perbedaan CPU dan GPU adalah:

CPU hanya memiliki beberapa inti prosesor (dual-core, quad-core, octa-core) yang bekerja secara serial. Sedangkan GPU terdiri atas RIBUAN core kecil-kecil yang bekerja secara paralel.

Inilah yang membuat GPU bisa menyelesaikan soal matematika tadi dengan cepat.

(Ini seperti mengerjakan tugas dari guru matematika yang sangat banyak. Cara cepatnya adalah dengan kerja kelompok, masing-masing mengerjakan satu soal)





Sumber:

http://www.jagatreview.com/2010/09/mengenal-teknologi-cuda-lebih-dekat/

http://rumaheditor.com/apa-itu-cuda-gpu-acceleration-dan-mercury-playback-engine/

Jumat, 01 Juni 2018

Quantum Computation


Nama : Rizky Riyadi Hidayat
Kelas : 4IA21
Mata Kuliah : Pengantar Komputasi Modern
Dosen : Indra Adi Permana




Apa itu Komputer Quantum?






Mesin Turing, yang dikembangkan oleh Alan Turing pada tahun 1930an, adalah perangkat teoretis yang terdiri dari pita rekaman dengan panjang tak terbatas yang terbagi menjadi kotak-kotak kecil. Setiap persegi bisa memiliki sebuah simbol (1 atau 0) atau dibiarkan kosong. Perangkat baca-tulis yang ada saat itu akan membaca simbol-simbol dan kekosongan ini, yang memberi mesin instruksi untuk melakukan program tertentu.

Nah, dalam mesin Turing kuantum, perbedaannya adalah pita rekaman itu ada dalam keadaan kuantum, seperti halnya kepala perangkat baca-tulis. Ini berarti bahwa simbol pada pita itu bisa berupa 0 atau 1, atau superposisi 0 dan 1; dengan kata lain simbol-simbolnya adalah 0 dan 1 (dan semua titik di antaranya) pada saat bersamaan. Sementara mesin Turing biasa hanya bisa melakukan satu perhitungan sekaligus, mesin Turing kuantum bisa melakukan banyak perhitungan sekaligus.

Komputer modern yang ada saat ini, seperti mesin Turing, bekerja dengan memanipulasi bit yang ada di salah satu dari dua keadaan ini: 0 atau 1. Komputer kuantum tidak terbatas pada dua keadaan. Komputer kuantum mengkodekan informasi sebagai quantum bits, atau qubit, yang biasa ditemukan dalam superposisi. Qubit mewakili atom, ion, foton atau elektron dan perangkat kontrol yang bekerja bersama sebagai memori komputer dan prosesor. Karena komputer kuantum dapat menampung banyak keadaan dan perhitungan ini secara bersamaan, komputer kuantum memiliki berpotensi untuk jadi jutaan kali lebih kuat daripada superkomputer paling kuat yang ada saat ini.


Bagaimana Cara Kerja Komputer Quantum?

Sampai saat ini, dua kegunaan yang paling menjanjikan untuk perangkat komputer kuantum itu adalah untuk melakukan pencarian kuantum dan anjak kuantum. Untuk memahami bagaimana pencarian kuantum bekerja, bayangkan jika Anda mencari nama dan nomor telepon tertentu pada Yellow Pages atau buku telepon dengan cara konvensional. Jika buku telepon tersebut memiliki 10.000 entri, rata-rata Anda perlu melihat sekitar setengah dari jumlah itu, yakni 5.000 entri, sebelum Anda berpotensi menemukan nama dan nomor yang dicari. Algoritma pencarian kuantum hanya perlu menebak 100 kali. Dengan 5.000 tebakan, sebuah komputer kuantum mampu menemukan 25 juta nama pada buku telepon tersebut.


Komputer Quantum Yang Ada Saat Ini

Suatu hari, para ahli percaya bahwa komputer kuantum akan menggantikan chip silikon, sama seperti transistor yang telah menggantikan tabung hampa udara. Tapi untuk saat ini, teknologi yang dibutuhkan untuk mengembangkan komputer kuantum semacam itu berada di luar jangkauan kita. Sebagian besar penelitian dalam komputasi kuantum masih sangat teoritis.

Saat ini, komputer kuantum paling maju kemampuannya tidak melampaui memanipulasi lebih dari 16 qubit. Artinya, kemampuannya jauh berbeda dengan aplikasi praktis. Namun, potensi komputer kuantum suatu hari bisa bekerja lebih cepat dan mudah untuk melakukan perhitungan yang sangat menyita waktu pada komputer konvensional tetap ada. Beberapa kemajuan penting telah dilakukan dalam komputasi kuantum dalam beberapa tahun terakhir.


Sumber:


https://www.labana.id/view/apa-itu-komputer-kuantum-dan-bagaimana-cara-kerjanya/2017/05/04/?fullview