komputer kuantum



1.    Pendahuluan .

Komputer kuantum adalah alat hitung yang menggunakan sebuah fenomena mekanika kuantum, misalnya superposisi dan keterkaitan, untuk melakukan operasi data. Menurut Prof. Freddy Permana Zen, M.Sc, D.Sc , komputasi kuantum adalah teori komputasi yang dibangun berdasarkan prinsip-prinsip mekanika kuantum. Algoritma kuantum memiliki efisiensi yang jauh lebih baik dibanding algoritma klasik yang dipakai pada komputer saat ini. Sebuah komputer kuantum juga diyakini memiliki kemampuan proses yang jauh lebih baik dibanding komputer klasik
. Riset bidang komputasi kuantum masih terus berkembang. Dalam komputasi klasik, jumlah data dihitung dengan bit; dalam komputer kuantum, hal ini dilakukan dengan qubit. Prinsip dasar komputer kuantum adalah bahwa sifat kuantum dari partikel dapat digunakan untuk mewakili data dan struktur data, dan bahwa mekanika kuantum dapat digunakan untuk melakukan operasi dengan data ini. Dalam hal ini untuk mengembangkan komputer dengan sistem kuantum diperlukan suatu logika baru yang sesuai dengan prinsip kuantum.

Komputasi pada dasarnya dapat didefinisikan sebagai pengolahan sistematis dari simbol tertentu (input) menjadi simbol lainnnya (output). Simbol di sini adalah obyek fisis, dan komputasi adalah proses fisis yang dilakukan oleh piranti fisis yang disebut komputer. Jika kita menginterpretasikan setiap keadaan fisis sebagai sebuah simbol, maka pada dasarnya setiap proses fisis dapat dianggap sebagai proses komputasi. Jelaslah bahwa informasi bersifat fisis dan karenanya teori komputasi harus mengacu pada hukum dasar fisika.

Teori informasi klasik sebagaimana dirumuskan oleh Turing, Church, Post, Neumann, dan Godel, yang direalisasikan dalam bentuk komputer digital sekarang ini, awalnya adalah teori matematika abstrak yang sama sekali tidak mengacu pada hukum fisika. Dan gagasan klasik ini tentulah membutuhkan tinjauan ulang dalam sudut pandang hukum fisika, khususnya dalam sudut pandang teori kuantum. Misalnya, dalam fenomena kuantum terdapat proses acak murni, misalnya peluruhan radioaktif, yang tidak terdapat dalam fisika klasik. Selanjutnya, dalam fisika klasik terdapat pasangan besaran yang tidak dapat secara bersamaan memiliki nilai pasti (prinsip ketidakpastian), misalnya jika A dan B adalah pasangan besaran yang memenuhi prinsip ketidakpastian, maka pengukuran A akan mempengaruhi hasil dari pengukuran B. Tindakan memperoleh informasi dari sebuah sistem akan mengganggu keadaan sistem tersebut. Juga keadaan kuantum memenuhi prinsisp superposisi, yaitu bahwa jika sebuah sistem bisa berada dalam keadaan |a> atau |b>, maka sistem itu juga bisa berada dalam kombinasi keduanya.

dalam seluruh permainan pada saat ini dalam komputasi kuantum sedang mencoba untuk membangun sebuah sistem yang lebih besar," kata Andrew Houck, asisten profesor teknik listrik yang merupakan bagian dari tim peneliti.

Untuk melakukan transfer, tim Petta yang menggunakan aliran foton microwave untuk menganalisis sepasang elektron terjebak dalam kandang kecil yang disebut kuantum dot. The "spin state" dari elektron - informasi tentang bagaimana mereka berputar - berfungsi sebagai qubit, sebuah unit dasar informasi. Aliran microwave memungkinkan para ilmuwan untuk membaca informasi tersebut.


Kami menciptakan sebuah rongga dengan cermin di kedua ujungnya - tetapi mereka tidak mencerminkan cahaya tampak, mereka mencerminkan radiasi gelombang mikro," kata Petta.


Kemudian kami mengirim microwave di salah satu ujungnya, dan kami melihat gelombang mikro ketika mereka keluar ujung Gelombang mikro dipengaruhi oleh negara spin dari elektron dalam rongga,. Dan kita dapat membaca perubahan itu.


Dalam arti biasa, jarak yang terlibat sangat kecil, seluruh aparat mengoperasikan lebih sedikit lebih dari satu sentimeter.Tapi pada skala subatomik, mereka yang luas. Hal ini seperti mengkoordinasikan gerakan dari atas berputar di bulan dengan yang lain di permukaan bumi.
"Ini hal yang paling menakjubkan," kata Jake Taylor, seorang fisikawan di Institut Nasional Standar dan Teknologi dan Bersama Quantum Institute di University of Maryland, yang bekerja pada proyek dengan tim Princeton. "Anda memiliki sebuah elektron tunggal hampir sepenuhnya mengubah sifat dari sistem inci panjang listrik."
Selama bertahun-tahun, tim ilmuwan telah mengejar ide untuk menggunakan mekanika kuantum untuk membangun sebuah mesin baru yang akan merevolusi komputasi. Tujuannya bukan membangun komputer yang lebih cepat atau lebih kuat, tetapi untuk membangun satu yang mendekati masalah dengan cara yang sama sekali berbeda.
Standar komputer menyimpan informasi sebagai klasik "bit," yang dapat mengambil nilai 0 atau 1. Bit-bit memungkinkan programmer untuk membuat instruksi yang kompleks yang merupakan dasar untuk daya komputasi modern. Sejak Alan Turing mengambil langkah pertama menuju menciptakan komputer di Princeton pada tahun 1936, insinyur telah menciptakan mesin jauh lebih kuat dan kompleks, namun sistem biner dasar tetap tidak berubah.
Kekuatan dari sebuah komputer kuantum berasal dari aturan aneh mekanika kuantum, yang menggambarkan semesta partikel subatom. Mekanika kuantum mengatakan bahwa sebuah elektron dapat berputar dalam satu arah, mewakili 1, atau di arah lain, 0. Tetapi juga bisa dalam sesuatu yang disebut "superposisi" mewakili semua negara antara 1 dan 0.Jika para ilmuwan dan insinyur dapat membangun sebuah mesin bekerja yang mengambil keuntungan dari hal ini, mereka akan membuka seluruhnya bidang baru komputasi.
"Inti dari sebuah komputer kuantum bukanlah bahwa mereka bisa melakukan apa yang komputer biasa dapat dilakukan tetapi lebih cepat, bukan itu yang mereka," kata Houck."Komputer kuantum akan memungkinkan kita untuk mendekati masalah berbeda Ini akan memungkinkan kita untuk memecahkan masalah yang tidak dapat diselesaikan dengan komputer biasa.."
Matematikawan masih bekerja pada kemungkinan untuk menggunakan sistem kuantum, tetapi mesin dapat memungkinkan mereka untuk menyelesaikan tugas-tugas seperti nomor anjak saat unfactorable, melanggar kode atau memprediksi perilaku molekul.
Salah satu tantangan yang dihadapi para ilmuwan adalah bahwa spin elektron, atau partikel kuantum lainnya, yang sangat halus. Setiap pengaruh luar, apakah seuntai magnet atau sekilas cahaya, mendestabilkan spin elektron 'dan memperkenalkan kesalahan.
Selama bertahun-tahun, para ilmuwan telah mengembangkan teknik untuk mengamati negara spin tanpa mengganggu mereka. (Tahun ini Hadiah Nobel dalam fisika dihormati dua ilmuwan yang pertama kali menunjukkan pengamatan langsung dari partikel kuantum.) Tapi menganalisis sejumlah kecil berputar tidak cukup, jutaan akan diminta untuk membuat prosesor kuantum yang nyata.
Untuk mendekati masalah, tim Petta gabungan teknik dari dua cabang ilmu: dari ilmu material, mereka menggunakan struktur yang disebut kuantum dot untuk menyimpan dan menganalisis spin elektron ', dan dari optik, mereka mengadopsi saluran microwave untuk mentransfer informasi berputar dari dot.
Untuk membuat titik-titik kuantum, tim terisolasi sepasang elektron pada bagian kecil dari bahan yang disebut "semikonduktor nanowire." Pada dasarnya, itu berarti kawat yang sangat tipis sehingga dapat menahan elektron seperti gelembung soda di sedotan. Mereka kemudian menciptakan kecil "kandang" di sepanjang kawat. Kandang yang mengatur sehingga elektron akan menetap menjadi kandang tertentu tergantung pada tingkat energi mereka.
Ini adalah bagaimana tim membaca keadaan spin: spin elektron yang sama akan menolak, sedangkan spin yang berbeda akan menarik. Jadi tim memanipulasi elektron ke tingkat energi tertentu dan kemudian membaca posisi mereka.Jika mereka berada di kandang yang sama, mereka berputar berbeda, jika mereka berada di kandang yang berbeda, berputar adalah sama.
Langkah kedua adalah untuk menempatkan ini quantum dot dalam saluran microwave. Hal ini memungkinkan tim untuk mentransfer informasi tentang keadaan spin pasangan itu - qubit.
Petta mengatakan langkah berikutnya adalah untuk meningkatkan keandalan dari setup untuk pasangan elektron tunggal. Setelah itu, tim berencana untuk menambah titik lebih kuantum untuk menciptakan qubit lebih. Anggota tim optimis.Ada tampaknya tidak ada masalah dapat diatasi pada saat ini, tetapi, seperti dengan sistem apapun, meningkatnya kompleksitas dapat menyebabkan kesulitan tak terduga.
"Metode yang kami gunakan di sini adalah terukur, dan kami ingin menggunakannya dalam sistem yang lebih besar," kata Petta. "Tapi untuk memanfaatkan skala, perlu bekerja sedikit lebih baik Langkah pertama adalah membuat cermin baik bagi rongga microwave..

2.    Parallel Computation    
Parallelism Concept

Paralel Processing adalah kemampuan menjalankan tugas atau aplikasi lebih dari satu aplikasi dan dijalankan secara simultan atau bersamaan pada sebuah komputer. Secara umum, ini adalah sebuah teknik dimana sebuah masalah dibagi dalam beberapa masalah kecil untuk mempercepat proses penyelesaian masalah.

Komputasi paralel adalah salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer independen secara bersamaan. Ini umumnya diperlukan saat kapasitas yang diperlukan sangat besar, baik karena harus mengolah data dalam jumlah besar ataupun karena tuntutan proses komputasi yang banyak. Kasus kedua umum ditemui di kalkulasi numerik untuk menyelesaikan persamaan matematis di bidang fisika (fisika komputasi), kimia (kimia komputasi) dll.

Untuk melakukan aneka jenis komputasi paralel ini diperlukan infrastruktur mesin paralel yang terdiri dari banyak komputer yang dihubungkan dengan jaringan dan mampu bekerja secara paralel untuk menyelesaikan satu masalah. Maka diperlukan perangkat lunak pendukung yang disebut middleware yang berperan untuk mengatur distribusi pekerjaan antar node dalam satu mesin paralel. Selanjutnya pemakai harus membuat pemrograman paralel untuk merealisasikan komputasi.

Pemrograman paralel adalah teknik pemrograman komputer yang memungkinkan eksekusi perintah/operasi secara bersamaan baik dalam komputer dengan satu (prosesor tunggal) ataupun banyak (prosesor ganda dengan mesin paralel) CPU.

Tujuan dari komputasi paralel adalah meningkatkan kinerja komputer dalam menyelesaikan berbagai masalah. Dengan membagi sebuah masalah besar ke dalam beberapa masalah kecil, membuat kinerja menjadi cepat.


Distributed Processing

Didistribusikan pengolahan paralel menggunakan pemrosesan paralel pada beberapa mesin. Salah satu contoh dari hal ini adalah bagaimana beberapa komunitas memungkinkan pengguna untuk mendaftar dan mendedikasikan komputer mereka sendiri untuk memproses beberapa data set yang diberikan kepada mereka oleh server. Ketika ribuan pengguna mendaftar untuk ini, banyak data dapat diproses dalam jumlah yang sangat singkat.

Parallel distributed computing dapat dibentuk dari :
         Ada : digunakan konsep pertemuan yang menggabungkan fitur RPC dan monitor.
         PVM (Parallel Virtual Machine) untuk mendukung workstation clusters
         MPI (Message-Passing Interface) programming GUI untuk parallel computers.


Architectural Parallel Computer

1    1. Komputer SISD (Single Instruction stream-Single Data stream)
Pada komputer jenis ini semua instruksi dikerjakan terurut satu demi satu, tetapi juga dimungkinkan adanya overlapping dalam eksekusi setiap bagian instruksi (pipelining).

2    2. Komputer SIMD (Single Instruction stream-Multiple Data stream)
Pada komputer SIMD terdapat lebih dari satu elemen pemrosesan yang dikendalikan oleh sebuah unit pengendali yang sama. Seluruh elemen pemrosesan menerima dan menjalankan instruksi yang sama yang dikirimkan unit pengendali.

3    3. Komputer MISD (Multiple Instruction stream-Single Data stream)
Komputer jenis ini memiliki unit pemroses yang masing-masing menerima dan mengoperasikan instruksi yang berbeda terhadap aliran data yang sama, dikarenakan setiap unit pemroses memiliki unit pengendali yang berbeda.

4    4. Komputer MIMD (Multiple Instruction stream-Multiple Data stream)
Pada sistem komputer MIMD murni terdapat interaksi di antara pemroses. Hal ini disebabkan seluruh aliran dari dan ke memori berasal dari space data yang sama bagi semua pemroses.



Pengantar Thread Programming

Dalam pemrograman komputer, sebuah thread adalah informasi terkait dengan penggunaan sebuah program tunggal yang dapat menangani beberapa pengguna secara bersamaan. Dari program point-of-view, sebuah thread adalah informasi yang dibutuhkan untuk melayani satu pengguna individu atau permintaan layanan tertentu. Jika beberapa pengguna menggunakan program atau permintaan bersamaan dari program lain yang sedang terjadi, thread yang dibuat dan dipelihara untuk masing-masing proses. Thread memungkinkan program untuk mengetahui user sedang masuk didalam program secara bergantian dan akan kembali masuk atas nama pengguna yang berbeda. Salah satu informasi thread disimpan dengan cara menyimpannya di daerah data khusus dan menempatkan alamat dari daerah data dalam register. Sistem operasi selalu menyimpan isi register saat program interrupted dan restores ketika memberikan program kontrol lagi.

Terdapat 2 buah teknik pada thread, yaitu :
1    1. Static Threading
Teknik ini biasa digunakan untuk komputer dengan chip multiprocessors dan jenis komputer shared-memory lainnya. Teknik ini memungkinkan thread berbagi memori yang tersedia, menggunakan program counter dan mengeksekusi program secara independen. Sistem operasi menempatkan satu thread pada prosesor dan menukarnya dengan thread lain yang hendak menggunakan prosesor itu.

2    2. Dynamic Multithreading
Teknik ini merupakan pengembangan dari teknik sebelumnya yang bertujuan untuk kemudahan karena dengannya programmer tidak harus pusing dengan protokol komunikasi, load balancing dan kerumitan lain yang ada pada static threading.


Pengantar Massage Passing, OpenMP

Massage Passing merupkan suatu teknik bagaimana mengatur suatu alur komunikasi messaging terhadap proses pada system. Message passing dalam ilmu komputer adalah suatu bentuk komunikasi yang digunakan dalam komputasi paralel , pemrograman-berorientasi objek , dan komunikasi interprocess . Dalam model ini, proses atau benda dapat mengirim dan menerima pesan yang terdiri dari nol atau lebih byte, struktur data yang kompleks, atau bahkan segmen kode ke proses lainnya dan dapat melakukan sinkronisasi. Paradigma Message passing yaitu :
Banyak contoh dari paradigma sekuensial dipertimbangkan bersama-sama.
Programmer membayangkan beberapa prosesor, masing-masing dengan memori, dan menulis sebuah program untuk berjalan pada setiap prosesor.
Proses berkomunikasi dengan mengirimkan pesan satu sama lain.

OpenMP merupakan API yang mendukung multi-platform berbagi memori multiprocessing pemrograman C , C + + , dan Fortran , pada kebanyakan arsitektur prosesor dan system operasi , termasuk Solaris , AIX , HP-UX , GNU / Linux , Mac OS X , dan Windows platform. Ini terdiri dari satu set perintah kompiler, rutinitas library, dan variable lingkungan yang mempengaruhi perilaku run-time. OpenMP dikelola oleh nirlaba teknologi konsorsium OpenMP Arsitektur Review Board (ARB atau OpenMP), bersama-sama didefinisikan oleh sekelompok perangkat keras komputer utama dan vendor perangkat lunak, termasuk AMD , IBM , Intel , Cray , HP , Fujitsu , Nvidia , NEC , Microsoft , Texas Instruments , Oracle Corporation , dan banyak lagi.



PengantarPemrograman CUDA GPU

CUDA (Compute Unified Device Architecture) merupakan suatu framework dari bahasa pemrograman yang mendukung bahas C , dimana mampu berkomunikasi langsung dengan GPU dan sangat mudah bekerjasama untuk segala multi-threading  parallel execution hampir diseluruh prosesor pada GPU. CUDA menggukan konsep nvcc sebagai ORM dalam object programmingnya. CUDA merupakan produk dari NVIDIA sebagai produsen graphic komputer ternama.

GPU (Graphics Processing Unit) merupakan prosesor yang didedikasikan untuk render cepat dalam pemrosesan polygon baik itu texturing dan shading. Terdiri atas banyak core namun masih menggunakan arsitektur yang sederhana, sehingga harganya relative murah dan di produksi secara masal untuk berbagai keperluan misalnya peneilitian/ilmuah.

Dalam permainan komputer industri, GPU yang digunakan tidak hanya untuk rendering grafis tetapi juga dalam perhitungan fisika permainan (efek fisik seperti puing-puing, asap, api, cairan). CUDA juga telah digunakan untuk mempercepat aplikasi non-grafis dalam biologi komputasi , kriptografi dan bidang lainnya oleh urutan besarnya atau lebih.






3.    Sumber referensi artikel :
http://radhika.blogdetik.com/2011/05/27/komputasi-kuantum/
http://www.sciencedaily.com/releases/2012/10/121019141254.htm

Komentar

Postingan Populer