Minggu, 07 Mei 2017

Paralel Computation




Paralel computation adalah salah satu pemrograman komputer yang memungkinkan untuk melakukan eksekusi perintah secara bersamaan dalam satu ataupun banyak prosesor di dalam sebuah CPU. Guananya apa? untuk eningkatkan performa dengan menggabungkan banyak resource untuk mengerjakan 1 tujuan.

Komputasi paralel biasanya diperlukan pada saat terjadinya pengolahan data dalam jumlah besar ( di industri keuangan, bioinformatika, dll ) atau dalam memenuhi proses komputasi yang sangat banyak. Selanjutnya, komputasi paralel ini juga dapat ditemui dalam kasus kalkulasi numerik dalam penyelesaian persamaan matematis di bidang fisika ( fisika komputasi ), kimia ( kimia komputasi ), dll. Nah kan butuh banyak komputer dan resource (prosesor, memory, dan storage), bisa aja lokasinya beda tempat, butuh tuh jaringan agar mesin-mesinya saling terhubung.

Konsep paralel adalah sebuah kemampuan prosesor untuk melakukan sebuah tugas ataupun banyak tugas secara simultan ataupun bersamaan, dengan kata lain prosesor mampu melakukan satu ataupun banyak tugas dalam satu waktu.
  
Distributed Processing 
 Pemrosesan terdistribusi merupakan proses pendistribusian pengolahan paralel dalam pemrosesan paralel menggunakan beberapa mesin. Jadi, bisa di bilang kemampuan dari suatu komputer-komputer yang dijalankan secara bersamaan untuk memecahkan suatu masalah dengan proses yang cepat. 

Menurut Gustafson proses terdistribusi adalah sebuah komputasi paralel berjalan dengan menggunakan dua atau lebih mesin untuk mempercepat penyelesaian masalah dengan memperhatikan faktor eksternal, seperti kemampuan mesin dan kecepatan proses tiap-tiap mesin yang digunakan. 

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. 

Contoh dari proses terdistribusi adalah ketika terdapat macam masalah diberikan pada satu master, maka dengan menggunakan komputer paralel masalah terseut akan terpecah menjadi beberapa bagian secara terdistribusi.




Architectural Parallel Computer

Menurut seorang Designer Processor, taksonomi Flynn, Arsitektur Komputer dibagi menjadi 4 baguan, yaitu :

 SISD (Single Instruction, Single Data) adalah satu-satunya yang menggunakan arsitektur Von Neumann. Ini dikarenakan pada model ini hanya digunakan 1 processor saja. Oleh karena itu model ini bisa dikatakan sebagai model untuk komputasi tunggal. Sedangkan ketiga model lainnya merupakan komputasi paralel yang menggunakan beberapa processor.

SIMD (Single Instruction, Multiple Data) menggunakan banyak processor dengan instruksi yang sama, namun setiap processor mengolah data yang berbeda. Sebagai contoh kita ingin mencari angka 27 pada deretan angka yang terdiri dari 100 angka, dan kita menggunakan 5 processor. Pada setiap processor kita menggunakan algoritma atau perintah yang sama, namun data yang diproses berbeda. Misalnya processor 1 mengolah data dari deretan / urutan pertama hingga urutan ke 20, processor 2 mengolah data dari urutan 21 sampai urutan 40, begitu pun untuk processor-processor yang lain. Beberapa contoh komputer yang menggunakan model SIMD adalah ILLIAC IV, MasPar, Cray X-MP, Cray Y-MP, Thingking Machine CM-2 dan Cell Processor (GPU).

MISD (Multiple Instruction, Single Data) menggunakan banyak processor dengan setiap processor menggunakan instruksi yang berbeda namun mengolah data yang sama. Hal ini merupakan kebalikan dari model SIMD. Untuk contoh, kita bisa menggunakan kasus yang sama pada contoh model SIMD namun cara penyelesaian yang berbeda. Pada MISD jika pada komputer pertama, kedua, ketiga, keempat dan kelima sama-sama mengolah data dari urutan 1-100, namun algoritma yang digunakan untuk teknik pencariannya berbeda di setiap processor. Sampai saat ini belum ada komputer yang menggunakan model MISD.

 MIMD (Multiple Instruction, Multiple Data) menggunakan banyak processor dengan setiap processor memiliki instruksi yang berbeda dan mengolah data yang berbeda. Namun banyak komputer yang menggunakan model MIMD juga memasukkan komponen untuk model SIMD. Beberapa komputer yang menggunakan model MIMD adalah IBM POWER5, HP/Compaq AlphaServer, Intel IA32, AMD Opteron, Cray XT3 dan IBM BG/L.



Sumber :

http://chachados.blogspot.co.id/2013/07/parallel-computation.html http://asepkeren-intiblogger.blogspot.com/2012/08/artikel-pengertian-parallel-computing.html http://maesamaziah.blogspot.co.id/2015/04/parallel-computation.html

Cheap Offers: http://bit.ly/gadgets_cheap
http://chachados.blogspot.co.id/2013/07/parallel-computation.html http://asepkeren-intiblogger.blogspot.com/2012/08/artikel-pengertian-parallel-computing.html http://maesamaziah.blogspot.co.id/2015/04/parallel-computation.html
http://syahrin-alf.blogspot.co.id/2016/05/apa-itu-parallel-computation.html



Apa Itu Parallel Computation dan Bagaimana Konsepnya ? Parallel computation adalah salah satu pemrograman komputer yang memungkinkan untuk melakukan eksekusi perintah secara bersamaan dan berbarengan dalam satu ataupun banyak prosesor di dalam sebuah CPU. Parallel computation sendiri berguna untuk meningkatkan performa komputer karena semakin banyak proses yang bisa dikerjakan secara bersamaan maka akan makin cepat. Komputasi paralel biasanya diperlukan pada saat terjadinya pengolahan data dalam jumlah besar ( di industri keuangan, bioinformatika, dll ) atau dalam memenuhi proses komputasi yang sangat banyak. Selanjutnya, komputasi paralel ini juga dapat ditemui dalam kasus kalkulasi numerik dalam penyelesaian persamaan matematis di bidang fisika ( fisika komputasi ), kimia ( kimia komputasi ), dll. Dalam menyelesaikan suatu masalah, komputasi paralel memerlukan infrastruktur mesin paralel yang terdiri dari banyak komputer yang dihubungkan dengan jaringan dan mampu bekerja secara paralel. Konsep paralel adalah sebuah kemampuan prosesor untuk melakukan sebuah tugas ataupun banyak tugas secara simultan ataupun bersamaan, dengan kata lain prosesor mampu melakukan satu ataupun banyak tugas dalam satu waktu. Apa Itu Distributed Processing ? Pemrosesan terdistribusi merupakan proses pendistribusian pengolahan paralel dalam pemrosesan paralel menggunakan beberapa mesin. Jadi, bisa di bilang kemampuan dari suatu komputer-komputer yang dijalankan secara bersamaan untuk memecahkan suatu masalah dengan proses yang cepat. Menurut Gustafson proses terdistribusi adalah sebuah komputasi paralel berjalan dengan menggunakan dua atau lebih mesin untuk mempercepat penyelesaian masalah dengan memperhatikan faktor eksternal, seperti kemampuan mesin dan kecepatan proses tiap-tiap mesin yang digunakan. 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. Contoh dari proses terdistribusi adalah ketika terdapat macam masalah diberikan pada satu master, maka dengan menggunakan komputer paralel masalah terseut akan terpecah menjadi beberapa bagian secara terdistribusi. Architectural Parallel Computer Menurut seorang Designer Processor, taksonomi Flynn, Arsitektur Komputer dibagi menjadi 4 baguan, yaitu : SISD (Single Instruction, Single Data) adalah satu-satunya yang menggunakan arsitektur Von Neumann. Ini dikarenakan pada model ini hanya digunakan 1 processor saja. Oleh karena itu model ini bisa dikatakan sebagai model untuk komputasi tunggal. Sedangkan ketiga model lainnya merupakan komputasi paralel yang menggunakan beberapa processor. SIMD (Single Instruction, Multiple Data) menggunakan banyak processor dengan instruksi yang sama, namun setiap processor mengolah data yang berbeda. Sebagai contoh kita ingin mencari angka 27 pada deretan angka yang terdiri dari 100 angka, dan kita menggunakan 5 processor. Pada setiap processor kita menggunakan algoritma atau perintah yang sama, namun data yang diproses berbeda. Misalnya processor 1 mengolah data dari deretan / urutan pertama hingga urutan ke 20, processor 2 mengolah data dari urutan 21 sampai urutan 40, begitu pun untuk processor-processor yang lain. Beberapa contoh komputer yang menggunakan model SIMD adalah ILLIAC IV, MasPar, Cray X-MP, Cray Y-MP, Thingking Machine CM-2 dan Cell Processor (GPU). MISD (Multiple Instruction, Single Data) menggunakan banyak processor dengan setiap processor menggunakan instruksi yang berbeda namun mengolah data yang sama. Hal ini merupakan kebalikan dari model SIMD. Untuk contoh, kita bisa menggunakan kasus yang sama pada contoh model SIMD namun cara penyelesaian yang berbeda. Pada MISD jika pada komputer pertama, kedua, ketiga, keempat dan kelima sama-sama mengolah data dari urutan 1-100, namun algoritma yang digunakan untuk teknik pencariannya berbeda di setiap processor. Sampai saat ini belum ada komputer yang menggunakan model MISD. MIMD (Multiple Instruction, Multiple Data) menggunakan banyak processor dengan setiap processor memiliki instruksi yang berbeda dan mengolah data yang berbeda. Namun banyak komputer yang menggunakan model MIMD juga memasukkan komponen untuk model SIMD. Beberapa komputer yang menggunakan model MIMD adalah IBM POWER5, HP/Compaq AlphaServer, Intel IA32, AMD Opteron, Cray XT3 dan IBM BG/L.

Cheap Offers: http://bit.ly/gadgets_cheap

Pengantar Quantum Computation

Wah, pemilik blog ini akhirnya nulis lagi, ya, untuk tugas. Kali ini kita bakal bahas apa itu Quantum Computation. Jujur saya belum pernah dengar ini sebelumnya. Di pikiran saya, Quantum itu merupakan merek kompor gas yang terkenal (:D) dan di dalam fisika quantum berhubungan dengan atom.

Kata Wikipedia, Quantum Computation itu membahas tentang sistem komputasi teoritis  yang menggunakan penerapan fenomena Mekanika kuantum (mechanical quantum, waduh fisika banget) seperti superposisi dan entanglement (mungkin bisa diartikan keterikatan) untuk mengoperasikan data.

 Dalam komputasi klasik, jumlah data dihitung dengan bit dalam komputer kuantum hal ini dilakukan dengan qubit (quantum bit) yang berarti jika di komputer biasa hanya mengenal 0 atau 1, dengan qubit sebuah komputer quantum dapat mengenal keduanya secara bersamaan dan itu membuat kerja dari komputer quantum itu lebih cepat dari pada komputer biasa.

Pada dasarnya, quantum computer dapat memproses secara paralel, sehingga berkomputasi jauh lebih cepat. Andaikan ada N data, komputer konvensional memerlukan N/2 perhitungan, sedangkan quantum computer hanya memerlukan N^1/2. Jelas bahwa untuk 1.000.000 data, komputer konvensional perlu 500.000 perhitungan, sedangkan Quantum Computer hanya perlu 1000. Artinya, bisa 500 kali lebih cepat!

Misal sesuatu partikel hanya mungkin bisa berada dalam dua kondisi, A atau B. Kalau kita amati, akan kita peroleh A atau B, bergantian. Namun selama tidak diamati, partikel itu akan berada pada A dan B bersamaan – partikel itu berada dalam superposisi dari A dan B. Seperti seseorang bingung memilih antara ayam dan ikan di restoran, dia akan selama mungkin menahan keputusan dan melihat menu terus, berpikir, sampai saat pelayan datang dan dia akhirnya harus memesan salah satu. Tetapi sebelum pelayan (pengamat) datang, dia berada dalam superposisi dari ayam dan ikan. Erwin Schrödinger, penemu prinsip ketidakpastian ini, dalam eksperimen khayalan Schrödinger’s Cat, bahkan membuktikan bahwa, sebelum diamati, kucing dalam eksperimennya bisa berada dalam keadaan hidup dan mati sekaligus – hidup juga dan mati juga! (paragraf ini copas, asli masih penasaran saya).

  1. Entanglement
Setelah sedikit memahami apa itu quantum computation dan quantum  computer kita akan memasuki pembahasan dari Entanglement. Entanglement sendiri masih bagian dari Quantum Computation. Apa itu Entanglement? Entanglement adalah suatu teori mekanika quantum yang menggambarkan seberapa cepat dan betapa kuatnya keterhubungan partikel-partikel pada Quantum computer yang dimana jika suatu partikel diperlakukan “A” maka akan memberikan dampak “A” juga ke partikel lainnya.

Ada juga pemahaman lain tentang Entanglement menurut Albert Einsten “Entanglement Kuantum” di istilahkan “Perbuatan Sihir Jarak Jahttps://www.blogger.com/blogger.g?blogID=8553109976194074933#editor/target=post;postID=3372436675266830888uh” yang merupakan sifat dasar mekanika kuantum. Entanglement memungkinkan informasi kuantum tersebar dalam puluhan ribu kilometer, dan hanya dibatasi oleh seberapa cepat dan seberapa banyak pasangan entanglement dapat bekerja dalam ruang. Dari sumber yang saya dapatkan dari internet : [Quantum entanglement]  merupakan fenomena yang menghubungkan dua partikel sedemikian rupa sehingga perubahan yang terjadi pada satu partikel seketika itu juga tercermin dalam partikel lainnya, meski mungkin secara fisik diantara mereka terpisah beberapa tahun cahaya.

Sifat yang aneh dan membingungkan ini justru diandalkan Quantum Computer. Sehebat-hebatnya komputer konvensional, dia selalu bekerja dengan bits, angka biner yang hanya bisa 1 atau 0. Quantum Computer bisa lepas dari restriksi ini, karena bisa berada dalam keadaan superposisi 1 dan 0 pada saat yang sama. Angka ini dinamai qubits (quantum bits, tentunya) yang bisa 1, bisa 0 atau bisa berada di antara 1 dan 0 – ingat, ini bukan berarti 0,6; melainkan 60% probabilitas A dan 40% probabilitas B.

Qubits yang digunakan adalah spin dari atom atau elektron. Spin, yang tidak ada analogi di fisika klasik, adalah sifat suatu partikel yang memiliki dua alternatif: up atau down. Kita bisa menganggap bahwa up adalah 1 dan down adalah 0. Selama tidak diamati, qubits bisa berada dalam superposisi dari up dan down, dan berinteraksi dengan qubits lain. Dua qubits bisa berada dalam empat keadaan sekaligus: 00, 10, 01 dan 11; empat qubits bisa delapan keadaan sekaligus. Sebuah quantum computer dengan 100 qubits bisa memproses 2100 keadaan bersamaan, sama seperti komputer konvensional dengan 1030 prosesor! wew....

      2. Quantum Gates dan Algoritma Shor
Gate artinya gerbang, berarti quantum gate di sini adalah gerbang operasi dari si Quantum computation ini... Bisa lihat ini dah https://youtu.be/0XJp3akoocY . Sepertinya ini proses pengoperasian bit 0 dan 1 menjadi qubits...

Algoritma Shor,  yang dinamai berdasarkan nama matematikawan Peter Shor adalah algoritma kuantum yaitu merupakan suatu algoritma yang berjalan pada komputer kuantum yang berguna untuk faktorisasi bilangan bulat. Algoritma Shor dirumuskan pada tahun 1994.  Inti dari algoritma ini merupakan bagaimana cara menyelesaikan faktorisasi terhaadap bilanga interger atau bulat yang besar.

Efisiensi algoritma Shor adalah karena efisiensi kuantum Transformasi Fourier , dan modular eksponensial. Jika sebuah komputer kuantum dengan jumlah yang memadai qubit dapat beroperasi tanpa mengalah kebisingan dan fenomena interferensi kuantum lainnya, algoritma Shor dapat digunakan untuk memecahkan kriptografi kunci publik skema seperti banyak digunakan skema RSA. Algoritma Shor terdiri dari dua bagian:
– Penurunan yang bisa dilakukan pada komputer klasik, dari masalah anjak untuk masalah ketertiban -temuan.
– Sebuah algoritma kuantum untuk memecahkan masalah order-temuan.

Hambatan runtime dari algoritma Shor adalah kuantum eksponensial modular yang jauh lebih lambat dibandingkan dengan kuantum Transformasi Fourier dan pre-/post-processing klasik. Ada beberapa pendekatan untuk membangun dan mengoptimalkan sirkuit untuk eksponensial modular. Yang paling sederhana dan saat ini yaitu pendekatan paling praktis adalah dengan menggunakan meniru sirkuit aritmatika konvensional dengan gerbang reversibel , dimulai dengan penambah ripple-carry. Sirkuit Reversible biasanya menggunakan nilai pada urutan n ^ 3, gerbang untuk n qubit. Teknik alternatif asimtotik meningkatkan jumlah gerbang dengan menggunakan kuantum transformasi Fourier , tetapi tidak kompetitif dengan kurang dari 600 qubit karena konstanta tinggi. (Bagian Algoritma  90% copas)

Ribet yah, udah lah, see ya.

Sumber :
http://www.faktailmiah.com/2010/08/06/kemajuan-jaringan-kuantum-dengan-entanglement-foton-pada-kubit-keadaan-padat.html
http://rcaesario.blogspot.com/2013/04/pengantar-quantum-computation.html
http://djuneardy.blogspot.com/2015/04/quantum-computing-entanglement.html
http://mynewsworthy99.blogspot.com/2013/05/pengantar-quantum-computation.html
https://andrifirmanc.wordpress.com/2016/04/07/pengantar-quantum-computation/
https://en.wikipedia.org/wiki/Quantum_computing
https://dislack.wordpress.com/quantum-computing/
http://www.fisikanet.lipi.go.id/utama.cgi?artikel&1063391045&53