Jumat, 22 Juni 2018

Parallel Computing

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.

Tujuan utama dari pemrograman paralel adalah untuk meningkatkan performa komputasi. Semakin banyak hal yang bisa dilakukan secara bersamaan (dalam waktu yang sama), semakin banyak pekerjaan yang bisa diselesaikan. Analogi yang paling gampang adalah, bila anda dapat merebus air sambil memotong-motong bawang saat anda akan memasak, waktu yang anda butuhkan akan lebih sedikit dibandingkan bila anda mengerjakan hal tersebut secara berurutan (serial). Atau waktu yg anda butuhkan memotong bawang akan lebih sedikit jika anda kerjakan berdua.

Performa dalam pemrograman paralel diukur dari berapa banyak peningkatan kecepatan (speed up) yang diperoleh dalam menggunakan tehnik paralel. Secara informal, bila anda memotong bawang sendirian membutuhkan waktu 1 jam dan dengan bantuan teman, berdua anda bisa melakukannya dalam 1/2 jam maka anda memperoleh peningkatan kecepatan sebanyak 2 kali.

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 :

1. 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.

2. 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).

3. 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.

4. 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.

Pengantar Thread Programming
Sebuah thread di dalam pemrograman komputer adalah sebuah informasi terkait tentang penggunaan sebuah program tunggal yang dapat menangani beberapa pengguna secara bersamaan.Thread ini memungkinkan program untuk mengetahui bagaimana user masuk ke dalam program secara bergantian dan user akan masuk kembali menggunakan user yang berbeda. Multiple thread dapat berjalan bersamaan dengan proses lainnya membagi sumberdaya menjadi memori, disaat proses lain tidak membaginya.

Bahasa populer dalam Pemrograman Paralel
Message Passing merupakan sebuah bentuk dari komunikasi yang digunakan di komputasi paralel, OOP (Object Oriented Programming) atau Pemrograman Berbasis Objek dan komunikasi interproses.

MPI adalah sebuah standard pemrograman yang memungkinkan pemrogram untuk membuatsebuah aplikasi yang dapat dijalankan secara paralel. Proses yang dijalankan oleh sebuah aplikasi dapat dibagi untuk dikirimkan ke masing – masing compute node yang kemudian masing – masing compute node tersebut mengolah dan mengembalikan hasilnya ke komputer head node.Untuk merancang aplikasi paralel tentu membutuhkan banyak pertimbangan - pertimbangandiantaranya adalah latensi dari jaringan dan lama sebuah tugas dieksekusi oleh prosesor.

OpenMP (Open Multi-Processing) adalah sebuah antarmuka pemrograman aplikasi (API) yang mendukung multi processing shared memory pemrograman di C, C++ dan Fortran pada berbagai arsitektur, termasuk UNix dan Microsoft Windows platform. OpenMP Terdiri dari satu set perintah kompiler, perpustakaan rutinitas, dan variabel lingkungan yang mempengaruhi run-time. Banyak Aplikasi dibangun dengan model hibrida pemrograman paralel  dapat dijalankan pada komputer cluster dengan menggunakan OpenMP dan Message Passing Interface (MPI), atau lebih transparan dengan menggunakan ekstensi OpenMP non-shared memory systems.

Perkembangan Komputasi Paralel Pada Masa Kini
Komputasi paralel pada masa kini dapat diimplementasikan pada komputer-komputer rumah (Home User). Karena saat ini komputer-komputer sudah memiliki lebih dari 1 core, sehingga dapat diimplementasikan dengan mudah. Akan tetapi penggunaan CPU pada komputasi paralel dirasa kurang memiliki performance yang optimal, sehingga para developer dari NVIDIA mengembangkan hardware yang diberi nama GPU (Graphical Processing Unit) pada tahun 1999, GPU memiliki performance yang jauh lebih baik daripada CPU karena memiliki Core (Inti) yang lebih banyak daripada CPU, 1 inti dapat memiliki banyak thread (Benang), sehingga program dapat berjalan dengan optimal.

NVIDIA juga mengembangkan sebuah software yang dapat digunakan bersamaan dengan GPU NVIDIA, software tersebut diberi nama CUDA (Compute Unified Device Architecture). CUDA digunakan untuk mengendalikan GPU sehingga dapat berjalan dengan optimal dan dikendalikan dengan mudah.
Pengantar Pemograman CUDA GPU Sebelum kita membahas tentang CUDA, kita akan membahas GPU terlebih dahulu. GPU dalah sebuah processor khusus untuk memepercepat dan mengubah memori untuk mempercepat pemrosesan gambar. GPU ini sendiri biasanya berada di dalam graphic card komputer ataupun laptop.

CUDA(Compute Unified Device Architecture) adalah suatu skema yang dibuat oleh NVIDIA agar NVIDIA selaku GPU (Graphic Processing Unit) mampu melakukan komputasi tidak hanya untuk pengolahan grafis namun juga untuk tujuan umum. Jadi dengan adanya CUDA kita dapat memanfaatkan banyak prosesor dari NVIDIA untuk melakukan proses perhitungan ataunpun komputasi yang banyak.

NVIDIA memiliki 3 arsitektur GPU yang dapat digunakan untuk komputasi paralel, arsitektur tersebut adalah :
1. NVIDIA Tesla Architecture
2. NVIDIA Fermi Architecture
3. NVIDIA Kepler Architecture

Arsitektur yang pertama kali diproduksi secara massal oleh NVIDIA adalah Tesla. Lalu selanjutnya dioptimalkan dengan Fermi, dan yang saat ini paling banyak digunakan adalah Kepler.

Pemrograman dengan CUDA ditulis dengan bahasa C sehingga dapat diimplementasikan dengan mudah



Referensi : 
http://maesamaziah.blogspot.co.id/2015/04/parallel-computation.html



Apakah quantum computing merupakan bentuk parallel computing ?
Tidak persis. Fenomena kuantum pada dasarnya memungkinkan mengevaluasi banyak jawaban potensial secara bersamaan, yang juga merupakan sesuatu yang dilakukan oleh komputer paralel. Namun, komputer paralel memerlukan sejumlah perangkat keras sebanding dengan jumlah hal yang dievaluasi secara bersamaan (N), sementara jumlah Qbits yang dibutuhkan oleh komputer kuantum hanya sebanding dengan log (N). Secara teori, mesin kuantum juga dapat melakukan evaluasi dalam waktu hampir nol. Di sisi lain, komputer kuantum hanya mengembalikan hasil yang dipilih secara acak tunggal, sementara komputer paralel dapat langsung mengembalikan semua hasil yang valid. Membaca hasil dari komputer kuantum umumnya lambat dan mendapatkan semua hasil membutuhkan menjalankan perhitungan kuantum cukup waktu untuk menjadi relatif yakin bahwa pengambilan sampel acak telah melihat semua hasil yang mungkin.

Tentu saja, seseorang dapat membangun mesin kuantum paralel. Yang sebenarnya menarik dalam banyak kerumitan komputer kuantum adalah menjaga qbits kuantum terjerat dan mendinginkan sistem, sementara beberapa komputer kuantum tidak perlu terjerat bersama dan secara teoritis seharusnya dapat berbagi pendinginan. Sejauh ini, sudah cukup sulit untuk hanya membangun satu komputer kuantum kecil.

Untuk saat ini, apa yang sebenarnya kita miliki adalah mesin hibrida yang terdiri dari komputer konvensional yang mengendalikan komputer kuantum kecil. Dengan demikian, komputer kuantum benar-benar terlihat seperti prosesor yang berjalan paralel dengan sistem host, seperti bagaimana GPU (Graphics Processing Units) di-host oleh PC.

Sumber :
Henry Dietz, Electrical and Computer Engineering Professor at University of Kentucky (1999-present) : https://www.quora.com/Is-quantum-computing-a-form-of-parallel-computing



Hubungan Parallel Computing dan Cloud Computing
Cloud computing adalah model bisnis untuk komputasi terdistribusi, pemrosesan paralel dapat dilakukan di cloud. Komputasi kinerja tinggi dapat dicapai menggunakan pemrosesan paralel melalui cloud. Pada dasarnya, kita membagi tugas komputasi interms dari potongan independen yang lebih kecil yang disebut cloudlet dan mengirim lebih dari sistem cloud untuk memprosesnya secara paralel, hasilnya akan terakumulasi dan hadir untuk klien, ini adalah apa yang diproses paralel di atas awan.

Sumber :



Hubungan antara Komputasi Modern dengan Paralel Processing
Hubungannya adalah penggunaan komputer saat ini / komputasi dianggap lebih cepat dibandingkan dengan penyelesaian masalah secara manual. Oleh sebab itu, peningkatan kinerja atau proses komputasi semakin diterapkan, salah satunya adalah dengan cara meningkatkan kecepatan perangkat keras. Dimana komponen utama dalam perangkat keras komputer adalah processor. Sedangkan parallel processing adalah penggunaan beberapa processor (multiprocessor atau arsitektur komputer dengan banyak processor) agar kinerja computer semakin cepat.

Komputasi paralel merupakan salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer juga secara bersamaan. Pada komputasi paralel dibutuhkan saat kapasitas yang diperlukan sangat besar untuk memproses komputasi yang banyak. Di samping itu pemakai harus membuat pemrograman paralel untuk dapat merealisasikan komputasi. Pemrograman paralel memiki tujuan utama yaitu untuk meningkatkan performa komputasi. Oleh karena itu semakin banyak hal yang bisa dilakukan secara bersamaan dalam waktu yang sama, semakin banyak pekerjaan yang bisa diselesaikan.

Super Computer disebut juga parallel Processor sbb merupakan komputer  mainframe yang memiliki banyak processor yang dipasang paralel.

Contoh perusahaan yang menggunakan parallel processing :
1. Perusahaan PTT Belanda yang menggunakan 48 procesor yang parallel.
2. Komputasi paralel pada dunia bisnis khususnya perfilm-an

Salah satu implementasi komputasi parallel pada dunia bisnis yaitu pada dunia perfilman yaitu rendering film. Kemajuan di bidang komputasi, khususnya dalam bidang komputer grafis memberikan kemudahan untuk memodelkan suatu benda dalam alam 3 dimensi virtual di komputer. Kita dapat membuat suatu benda dalam wujud 3 dimensi dan mengubah-ubah sudut pandang, menentukan pencahayaan, bahkan menyusun gerakan benda dalam alam 3 dimensi virtual tersebut. Perkembangan ini muncul dari kebutuhan di bidang manufaktur untuk memiliki komputer yang dapat membantu perancangan (computer aided design-CAD). Ditemukannya teknik-teknik dan metoda rendering suatu obyek 3 D ke dalam media 2 D membuat benda yang dihasilkan oleh perangkat lunak ini menjadi semakin nyata dan menyerupai aslinya.

Komputasi Paralel mempunyai prinsip yang bersesuaian dengan algoritma Divide and Conquer, yaitu membagi-bagi proses menjadi bagian-bagian yang cukup kecil dan memungkinkan untuk dikerjakan oleh sebuah unit komputasi. 

Terdapat 2 klasifikasi parallel computer yang penting, yaitu : Sebuah komputer dengan banyak unit komputasi internal, atau lebih dikenal sebagai Shared Memory Multiprocessor. Beberapa komputer yang terhubung melalui sebuah jaringan, atau lebih dikenal sebagai Distributed Memory Multicomputer.

Sumber :
http://ninasuri.blogspot.com/2013/06/komputasi-paralel-prosessing-dan.html

Minggu, 20 Mei 2018

Komputasi Kuantum (Quantum Computing)

Pengertian
Pengertian sederhana dari komputer kuantum adalah jenis chip processor terbaru yang diciptakan berdasar perkembangan mutakhir dari ilmu fisika (dan matematika) quantum. Singkatnya, chip konvensional sekarang ini perlu diganti dengan yang lebih baik.
Pengertian komputer kuantum adalah merupakan suatu alat hitung yang menggunakan sebuah fenomena mekanika kuantum, misalnya superposisi dan keterkaitan, untuk melakukan operasi data. Dalam komputasi klasik, jumlah data dihitung dengan bit; dalam komputer kuantum, hal ini dilakukan dengan qubit.

Sejarah
Ide mengenai komputer kuantum pertama kali muncul pada tahun 1970-an oleh para fisikawan dan ilmuwan komputer, seperti Charles H. Bennett dari IBM, Paul A. Benioff dari Argonne National Laboratory, Illinois, David Deutsch dari University of Oxford, dan Richard P. Feynman dari California Institute of Technology (Caltech).
Di antara para ilmuwan tersebut, Feynmanlah yang pertama kali mengajukan model yang menunjukkan bahwa sebuah sistem kuantum dapat digunakan untuk melakukan komputasi. Lebih jauh, Feynman juga menunjukkan bagaimana sistem tersebut dapat menjadi simulator bagi fisika kuantum. Dengan kata lain, fisikawan dapat melakukan eksperimen fisika kuantum melalui komputer kuantum.
Pada tahun 1985, Deutsch menyadari esensi dari komputasi oleh sebuah komputer kuantum dan menunjukkan bahwa semua proses fisika, secara prinsipil, dapat dimodelkan melalui komputer kuantum. Dengan demikian, komputer kuantum memiliki kemampuan yang melebihi komputer klasik.
Setelah Deutsch mengeluarkan tulisannya mengenai komputer kuantum, para ilmuwan mulai melakukan riset di bidang ini. Mereka mulai mencari kemungkinan penggunaan dari sebuah komputer kuantum. Pada tahun 1995, Peter Shor merumuskan sebuah algoritma yang memungkinkan penggunaan komputer kuantum untuk memecahkan masalah faktorisasi dalam teori bilangan.
Hingga saat ini, riset di bidang komputer kuantum terus dijalankan di seluruh dunia. Beberapa kendala terus dicari pernyelesaiannya. Berbagai metode dikembangkan untuk memungkinkan terwujudnya sebuah komputer yang memilki kemampuan yang luar biasa ini. Sejauh ini, sebuah komputer kuantum yang telah dibangun hanya dapat mencapai kemampuan untuk memfaktorkan dua digit bilangan. Komputer kuantum ini dibangun pada tahun 1998 di Los Alamos, Amerika Serikat, menggunakan NMR (Nuclear Magnetic Resonance).
Saat ini piha google sudah melakukan percobaan dan pembuatan tentang computer kuantum ini. Google meneraplan Algoritma yang sama telah diterapkan pada produk lab Google yakni Google Image Swirl dimana secara cerdas komputer bisa menentukan dan mengelompokkan mana gambar mobil Jaguar dengan mana gambar binatang Jaguar. Atau misalnya mana kelompok gambar buah Apel dengan kelompok gambar komputer apple. Ini adalah salah satu contoh pengembangan computer kuantum yang dibuat google.

Perbedaan komputer kuantum dengan komputer klasik
Memori komputer klasik merupakan string dari 0s dan 1s, dan ia mampu melakukan perhitungan hanya pada sekumpulan bilangan secara simultan. Memori komputer kuantum merupakan sebuah keadaan kuantum yang mrupakan superposisi dari bilangan-bilangan yang berbeda. Sebuah komputer kuantum dapat melakukan perhitungan klasik reversible secara bebas pada semua bilangan secara bersamaan. Pelaksanaan sebuah komputasi pada bilangan yang berbeda pada saat yang sama dan kemudian penginterferesian semua hasil untuk mendapatkan satu jawaban, menjadikan sebuah komputer kuantum jauh lebih kuat daripada komputer klasik (West, 2000).
Sepanjang sejarah komputasi, bit tetap merupakan unit komputasi dasar informasi. Mekanika kuantum memungkinkan pengkodean informasi dalam bit kuantum (qubit). Tidak seperti bit klasik, yang hanya bisa menyimpan nilai tunggal - baik 0 atau 1 - qubit dapat menyimpan baik 0 dan 1 pada saat yang sama. Selanjutnya, register kuantum 64 qubit dapat menyimpan nilai 264 sekaligus. Komputer Kuantum dapat melakukan perhitungan pada semua nilai-nilai ini pada saat yang sama. Namun, penggalian hasil dari perhitungan paralel masif telah terbukti sulit, membatasi jumlah aplikasi yang telah menunjukkan peningkatan kecepatan yang signifikan dibandingkan komputasi klasik. Paralelisme klasik juga dapat meningkatkan jumlah nilai yang ditangani secara bersamaan, tapi lama sebelum mencapai jumlah paralelisme yang dicapai oleh sebuah komputer kuantum, sebuah sistem klasik kehabisan ruang. Untuk sistem klasik, jumlah paralelisme meningkat dalam proporsi langsung dengan ukuran sistem.


Entanglement
Entanglement adalah istilah yang digunakan dalam teori kuantum untuk menggambarkan cara bahwa partikel energi/materi dapat menjadi berkorelasi, diduga dan diprediksi berinteraksi satu sama lain terlepas dari seberapa jauh mereka berada. Keadaan ini tidak memiliki analogi klasiknya. Keadaan terbelit, seperti pasangan EPR yang akan kita bahas segera, bertanggung jawab atas sebagian besar pencapaian paralelisme sistem kuantum. Dengan demikian, komputasi yang memanfaatkan paralelisme kuantum sering disebut pengolahan informasi “belitan” yang disempurnakan (entanglement–enhanced information processing).
"Secara fakta, teori tentang belitan (entanglement) telah menyebabkan para ilmuwan untuk percaya bahwa ada cara untuk mempercepat komputasi. Bahkan komputer saat ini telah mendekati titik di mana kecepatan mereka dibatasi oleh seberapa cepat elektron dapat bergerak melalui kabel - kecepatan cahaya. Baik dalam komputer kuantum atau tradisional, belitan (entanglement) bisa memecahkan masa lalu yang membatasi "(Manay, 1998).
Menurut mekanika kuantum kekuatan luar yang bekerja pada dua partikel dari sistem kuantum dapat menyebabkan mereka menjadi terbelit. Keadaan kuantum dari sistem ini dapat berisi semua posisi spin (momen magnetik internal) dari setiap partikel. Spin total sistem hanya bisa sama untuk nilai diskrit tertentu dengan probabilitas yang berbeda. Pengukuran spin total sistem kuantum tertentu menunjukkan bahwa posisi spin beberapa partikel tidak independen dari yang lainnya. Untuk sistem tersebut, ketika orientasi spin dari satu partikel diubah dengan beberapa alasan, orientasi spin dari partikel lain akan berubah secara otomatis dan cepat. Hukum yang yang telah dikembangkan sejauh ini tentang kecepatan cahaya tidak taati dalam kasus ini, karena perubahan orientasi spin terjadi segera. Setidaknya ada hipotesis untuk menggunakan fenomena ini dalam komputasi kuantum.
Kita telah mengetahui bahwa kecepatan komunikasi dibatasi oleh kecepatan cahaya karena tidak ada sesuatupun dapat melakukan perjalanan lebih cepat dari kecepatan cahaya. Pertanyaannya adalah bagaimana partikel dari sistem kuantum berkomunikasi ketika mereka mengubah orientasi spinnya dan akibatnya keadaan vektornya. Ilmuwan terkenal menghabiskan banyak waktu membahas masalah ini. Ide Einstein, bahwa beberapa "parameter tersembunyi" yang tidak diketahui dari sistem kuantum berkontribusi terhadap efek ini, telah ditolak secara teoritis dan eksperimental.
Hal ini adalah salah satu contoh yang menunjukkan perbedaan antara realitas klasik dan kuantum. Efek sistem kuantum ini dapat menjelaskan banyak aspek alam (misalkan karakteristik kimia dari atom dan molekul) dan telah dibuktikan melalui oleh eksperimen.


Qubits
Dalam sebuah percobaan yang terkenal, cahaya dari satu sumber melewati dua celah, menciptakan sebuah pola interferensi pada layar. Bahkan ketika sumber cahaya hanya memancarkan satu foton pada suatu waktu, pola interferensi muncul. Standar teori kuantum mendalilkan bahwa setiap foton bergerak pada kedua jalur (path) sekaligus. Dengan demikian, partikel dapat berada di dua tempat pada saat yang sama. Dalam situasi tersebut, kita mengatakan bahwa posisi partikel berada dalam superposisi dari dua keadaan.
Dua jalur perjalanan partikel dapat mewakili dua keadaan dari sebuah bit, 0 dan 1. Dalam mekanika kuantum, apabila sistem memiliki dua atau lebih peluang yang memungkinkan, ia dapat menjelajahi mereka secara bersamaan. Setiap sistem dua keadaan, seperti jalur foton, dapat mewakili qubit. Dalam komputer kuantum, kita malah mungkin menggunakan dua orbit elektron dalam atom untuk mewakili qubit. Atom bisa eksis dalam superposisi dari 0 dan 1, mirip seperti lonceng yang dipukul dapat bergetar pada dua frekuensi yang berbeda secara bersamaan.


Quantum Gates
Gerbang kuantum biasanya direpresentasikan sebagai matriks. Sebuah gerbang yang bekerja pada k qubit diwakili oleh 2 x 2 k k matriks kesatuan. Jumlah qubit dalam input dan output dari gerbang harus sama. Tindakan dari gerbang kuantum ditemukan dengan mengalikan matriks mewakili gerbang dengan vektor yang mewakili keadaan kuantum. Tidak seperti banyak gerbang logika klasik, gerbang logika kuantum yang reversibel (model komputasi dimana proses komputasi sampai batas tertentu adalah reversibel, yaitu waktu-dibalik).

 Algoritma pada Quantum Computing
 Para ilmuwan mulai melakukan riset mengenai sistem kuantum tersebut, mereka juga berusaha untuk menemukan logika yang sesuai dengan sistem tersebut. Sampai saat ini telah dikemukaan dua algoritma baru yang bisa digunakan dalam sistem kuantum yaitu algoritma shor dan algoritma grover.

Algoritma Shor
Algoritma yang ditemukan oleh Peter Shor pada tahun 1995. Dengan menggunakan algoritma ini, sebuah komputer kuantum dapat memecahkan sebuah kode rahasia yang saat ini secara umum digunakan untuk mengamankan pengiriman data. Kode yang disebut kode RSA ini, jika disandikan melalui kode RSA, data yang dikirimkan akan aman karena kode RSA tidak dapat dipecahkan dalam waktu yang singkat. Selain itu, pemecahan kode RSA membutuhkan kerja ribuan komputer secara paralel sehingga kerja pemecahan ini tidaklah efektif.

Algoritma Grover
Algoritma Grover adalah sebuah algoritma kuantum yang menawarkan percepatan kuadrat dibandingkan pencarian linear klasik untuk list tak terurut. Algoritma Grover menggambarkan bahwa dengan menggunakan pencarian model kuantum, pencarian dapat dilakukan lebih cepat dari model komputasi klasik. Dari banyaknya algoritma kuantum, algoritma grover akan memberikan jawaban yang benar dengan probabilitas yang tinggi. Kemungkinan kegagalan dapat dikurangi dengan mengulangi algoritma. Algoritma Grover juga dapat digunakan untuk memperkirakan rata-rata dan mencari median dari serangkaian angka, dan untuk memecahkan masalah Collision.


Implementasi Quantum Computing
Pada 19 Nov 2013 Lockheed Martin, NASA dan Google semua memiliki satu misi yang sama yaitu mereka semua membuat komputer kuantum sendiri. Komputer kuantum ini adalah superkonduktor chip yang dirancang oleh sistem D – gelombang dan yang dibuat di NASA Jet Propulsion Laboratories.
NASA dan Google berbagi sebuah komputer kuantum untuk digunakan di Quantum Artificial Intelligence Lab menggunakan 512 qubit D -Wave Two yang akan digunakan untuk penelitian pembelajaran mesin yang membantu dalam menggunakan jaringan syaraf tiruan untuk mencari set data astronomi planet ekstrasurya dan untuk meningkatkan efisiensi searchs internet dengan menggunakan AI metaheuristik di search engine heuristical. 
A.I. seperti metaheuristik dapat menyerupai masalah optimisasi global mirip dengan masalah klasik seperti pedagang keliling, koloni semut atau optimasi swarm, yang dapat menavigasi melalui database seperti labirin. Menggunakan partikel terjerat sebagai qubit, algoritma ini bisa dinavigasi jauh lebih cepat daripada komputer konvensional dan dengan lebih banyak variabel. 
Penggunaan metaheuristik canggih pada fungsi heuristical lebih rendah dapat melihat simulasi komputer yang dapat memilih sub rutinitas tertentu pada komputer sendiri untuk memecahkan masalah dengan cara yang benar-benar cerdas . Dengan cara ini mesin akan jauh lebih mudah beradaptasi terhadap perubahan data indrawi dan akan mampu berfungsi dengan jauh lebih otomatisasi daripada yang mungkin dengan komputer normal.


Sumber :

Kamis, 12 April 2018

Cloud Computing


Pengertian Cloud Computing

Komputasi awan (bahasa Inggris: cloud computing) adalah gabungan pemanfaatan teknologi komputer ('komputasi') dan pengembangan berbasis Internet ('awan'). Awan (cloud) adalah metafora dari internet, sebagaimana awan yang sering digambarkan di diagram jaringan komputer. Sebagaimana awan dalam diagram jaringan komputer tersebut, awan (cloud) dalam Cloud Computing juga merupakan abstraksi dari infrastruktur kompleks yang disembunyikannya. Ialah suatu metoda komputasi di mana kapabilitas terkait teknologi informasi disajikan sebagai suatu layanan (as a service), sehingga pengguna dapat mengaksesnya lewat Internet ("di dalam awan") tanpa mengetahui apa yang ada didalamnya, ahli dengannya, atau memiliki kendali terhadap infrastruktur teknologi yang membantunya. Menurut sebuah makalah tahun 2008 yang dipublikasi IEEE Internet Computing "Cloud Computing adalah suatu paradigma di mana informasi secara permanen tersimpan di server di internet dan tersimpan secara sementara di komputer pengguna (client) termasuk di dalamnya adalah desktop, komputer tablet, notebook, komputer tembok, handheld, sensor-sensor, monitor dan lain-lain. 

Komputasi awan adalah suatu konsep umum yang mencakup SaaS, Web 2.0, dan tren teknologi terbaru lain yang dikenal luas, dengan tema umum berupa ketergantungan terhadap Internet untuk memberikan kebutuhan komputasi pengguna. Sebagai contoh, Google Apps menyediakan aplikasi bisnis umum secara daring yang diakses melalui suatu penjelajah web dengan perangkat lunak dan data yang tersimpan di server. Komputasi awan saat ini merupakan trend teknologi terbaru, dan contoh bentuk pengembangan dari teknologi Cloud Computing ini adalah iCloud.


Sejarah Singkat Cloud Computing

Ide awal dari cloud computing dimulai sejak tahun 1960-an, saat john McCarthy, yang merupakan pakar komputasi MIT yang dikenal juga sebagai salah satu pionir intelejensia buatan, menyampaikan visi bahwa suatu hari nanti cloud computing atau komputasi akan menjadi infrastuktur publik seperti halnya telepon dan listrik, namun pada tahun 1995 seorang Oracle yang bernama Larry Ellison, memunculkan ide "Network Computing" sebagai kampanye untuk menggugat dominasi micrososft yang saat itu sudah merajai dekstop computingdengan windows 95 nya.

Larry Ellipson menawarkan ide bahwa sebetulnya pengguna tidak membutuhkan berbagai software mulai dari sistem operasi sampai sofware lainny yang di instal kedalam PC dekstop mereka, PC dekstop bisa digantikan oleh sebuah terminal yang langsung tersambung dengan sebuah server yang meyediakan environment yang berisi berbagai kebutuhan software yang siap di akses oleh pengguna.

Ide Network Computing ini sempat memanas dengan muncuknya beberapa pabrikan sperti Sun Microsystem dan Novel Netware yang menawarkan network computing clien sebagai pengganti dekstop. Namun Gerungan network computing lenyap dengan sendirinya karena masalah jaringan pada saat itu belum memadai sehingga akses network komputing sangat lambat.

Selanjutnya komputasi awan bergulir sperti bola salju yang menyapu dunia teknologi, dumulai tahun 2005 mulai muncul inisiatif yang didorong oleh nama-nama besar seperti amazon.com yang meluncurkan Amazon EC2, Google dengan App Angine nya, tak ketinggalan raksasa biru IBM meluncurkan Blue Cloud Initiative, dan lain-lain. Semua inisiatif ini masih terus bergerak dan mencari bentuk terbaiknya, baik dari sisi praktik atau dari sisi akademis, akhirnya seperti yang kita saksikan sekarang seluruh nama-nama besar terlibat dalam peperangan cloud computing ini.


Layanan Cloud Computing

Berdasarkan jenis layanan-nya, Cloud Computing dibagi menjadi berikut ini:
1. Software as a Service (SaaS)
2. Platform as a Service (PaaS)
3. Infrastructure as a Service (IaaS)

Dibawah ini kita bahas, masing-masing jenis layanan diatas:

1. Software as a Service (SaaS) adalah layanan dari Cloud Computing dimana kita tinggal memakai software(perangkat lunak) yang telah disediakan. Kita cukup tahu bahwa perangkat lunak bisa berjalan dan bisa digunakan dengan baik. Contoh: layanan email publik (Gmail, YahooMail, Hotmail, dsb), social network (Facebook, Twitter, dsb) instant messaging (YahooMessenger, Skype, GTalk, dsb) dan masih banyak lagi yang lain. Dalam perkembangan-nya, banyak perangkat lunak yang dulu hanya kita bisa nikmati dengan menginstall aplikasi tersebut di komputer kita (on-premise) mulai bisa kita nikmati lewat Cloud Computing. Keuntungan-nya, kita tidak perlu membeli lisensi dan tinggal terkoneksi ke internet untuk memakai-nya. Contoh: Microsoft Office yang sekarang kita bisa nikmati lewat Office 365, Adobe Suite yang bisa kita nikmati lewat Adobe Creative Cloud, dsb. 

2. Platform as a Service (PaaS) adalah layanan dari Cloud Computing dimana kita menyewa “rumah” berikut lingkungan-nya (sistem operasi, network, databbase engine, framework aplikasi, dll), untuk menjalankan aplikasi yang kita buat. Kita tidak perlu pusing untuk menyiapkan “rumah” dan memelihara “rumah” tersebut. Yang penting aplikasi yang kita buat bisa berjalan dengan baik di “rumah” tersebut. Untuk pemeliharaan “rumah” ini menjadi tanggung jawab dari penyedia layanan. Sebagai analogi, misal-nya kita sewa kamar hotel, kita tinggal tidur di kamar yang sudah kita sewa, tanpa peduli bagaimana “perawatan” dari kamar dan lingkungan-nya. Yang penting, kita bisa nyaman tinggal di kamar itu, jika suatu saat kita dibuat tidak nyaman, tinggal cabut dan pindah ke hotel lain yang lebih bagus layanan-nya. Contoh penyedia layanan PaaS ini adalah: Amazon Web Service, Windows Azure, bahkan tradisional hosting-pun merupakan contoh dari PaaS. Keuntungan dari PaaS adalah kita sebagai pengembang bisa fokus pada aplikasi yang kita buat, tidak perlu memikirkan operasional dari “rumah” untuk aplikasi yang kita buat. 

3. Infrastructure as a Service (IaaS) adalah layanan dari Cloud Computing dimana kita bisa “menyewa” infrastruktur IT (komputasi, storage, memory, network dsb). Kita bisa definisikan berapa besar-nya unit komputasi (CPU), penyimpanan data (storage), memory (RAM), bandwith, dan konfigurasi lain-nya yang akan kita sewa. Mudah-nya, IaaS ini adalah menyewa komputer virtual yang masih kosong, dimana setelah komputer ini disewa kita bisa menggunakan-nya terserah dari kebutuhan kita. Kita bisa install sistem operasi dan aplikasi apapun diatas-nya. Contoh penyedia layanan IaaS ini adalah: Amazon EC2, Windows Azure (soon), TelkomCloud, BizNetCloud, dsb. Keuntungan dari IaaS ini adalah kita tidak perlu membeli komputer fisik, dan konfigurasi komputer virtual tersebut bisa kita rubah (scale up/scale down) dengan mudah. Sebagai contoh, saat komputer virtual tersebut sudah kelebihan beban, kita bisa tambahkan CPU, RAM, Storage dsb dengan segera.


Manfaat Cloud Computing Serta Penerapan Dalam Kehidupan Sehari – hari

Setelah penjabaran definisi singkat diatas tentu penggunaan teknologi dengan sistem cloud cukup memudahkan pengguna selain dalam hal efisiensi data, juga penghematan biaya. Berikut manfaat manfaat yang dapat dipetik lewat teknologi berbasis sistem cloud.

1. Semua Data Tersimpan di Server Secara Terpusat
Salah satu keunggulan teknologi cloud adalah memungkinkan pengguna untuk menyimpan data secara terpusat di satu server berdasarkan layanan yang disediakan oleh penyedia layanan Cloud Computing itu sendiri. Selain itu, pengguna juga tak perlu repot repot lagi menyediakan infrastruktur seperti data center, media penyimpanan/storage dll karena semua telah tersedia secara virtual.

2. Keamanan Data
Keamanan data pengguna dapat disimpan dengan aman lewat server yang disediakan oleh penyedia layanan Cloud Computing seperti jaminan platform teknologi, jaminan ISO, data pribadi, dll.

3. Fleksibilitas dan Skalabilitas yang Tinggi
Teknologi Cloud menawarkan fleksibilitas dengan kemudahan data akses, kapan dan dimanapun kita berada dengan catatan bahwa pengguna (user) terkoneksi dengan internet. Selain itu, pengguna dapat dengan mudah meningkatkan atau mengurangi kapasitas penyimpanan data tanpa perlu membeli peralatan tambahan seperti hardisk. Bahkan salah satu praktisi IT kenamaan dunia, mendiang Steve Jobs mengatakan bahwa membeli memori fisik untuk menyimpan data seperti hardisk merupakan hal yang percuma jika kita dapat menyimpan nya secara virtual/melalui internet.

4. Investasi Jangka Panjang
Penghematan biaya akan pembelian inventaris seperti infrastruktur, hardisk, dll akan berkurang dikarenakan pengguna akan dikenakan biaya kompensasi rutin per bulan sesuai dengan paket layanan yang telah disepakati dengan penyedia layanan Cloud Computing. Biaya royalti atas lisensi software juga bisa dikurangi karena semua telah dijalankan lewat komputasi berbasis Cloud.

Penerapan Cloud Computing telah dilakukan oleh beberapa perusahaan IT ternama dunia seperti Google lewat aplikasi Google Drive, IBM lewat Blue Cord Initiative, Microsoft melalui sistem operasi nya yang berbasis Cloud Computing, Windows Azure dsb. Di kancah nasional sendiri penerapan teknologi Cloud juga dapat dilihat melalui penggunaan Point of Sale/program kasir.

Salah satu perusahaan yang mengembangkan produknya berbasis dengan sistem Cloud adalah DealPOS. Metode kerja Point of Sale (POS) ini adalah dengan mendistribusikan data penjualan toko retail yang telah diinput oleh kasir ke pemilik toko retail melalui internet dimanapun pemilik toko berada. Selain itu, perusahaan telekomunikasi ternama nasional, Telkom juga turut mengembangkan sistem komputasi berbasis Cloud ini melalui Telkom Cloud dengan program Telkom VPS dan Telkom Collaboration yang diarahkan untuk pelanggan UKM (Usaha Kecil-Menengah).


Cara Kerja Sistem Cloud Computing

Sistem Cloud bekerja menggunakan internet sebagai server dalam mengolah data. Sistem ini memungkinkan pengguna untuk login ke internet yang tersambung ke program untuk menjalankan aplikasi yang dibutuhkan tanpa melakukan instalasi. Infrastruktur seperti media penyimpanan data dan juga instruksi/perintah dari pengguna disimpan secara virtual melalui jaringan internet kemudian perintah – perintah tersebut dilanjutkan ke server aplikasi. Setelah perintah diterima di server aplikasi kemudian data diproses dan pada proses final pengguna akan disajikan dengan halaman yang telah diperbaharui sesuai dengan instruksi yang diterima sebelumnya sehingga konsumen dapat merasakan manfaatnya.

Contohnya lewat penggunaan email seperti Yahoo ataupun Gmail. Data di beberapa server diintegrasikan secara global tanpa harus mendownload software untuk menggunakannya. Pengguna hanya memerlukan koneksi internet dan semua data dikelola langsung oleh Yahoo dan juga Google. Software dan juga memori atas data pengguna tidak berada di komputer tetapi terintegrasi secara langsung melalui sistem Cloud menggunakan komputer yang terhubung ke internet.


Kelebihan dan Kekurangan Cloud Computing

Beberapa kelebihan lain cloud computing adalah:

1. Data terpusat.
Salah satu yang bisa dianggap keunggulan teknologi ini adalah data terpusat berada di server. Kelebihan ini memungkinkan Anda mengakses mesin cloud Anda dari mana pun selama ada sambungan internet. Misalnya, jika Anda memiliki data di Google Drive yang sinkron antara komputer di rumah dan di smartphone, Anda bisa mengakses data tersebut di waktu yang sama karena data Anda sudah menggunakan server dari Google Drive.

2. Fleksibel.
Teknologi ini memiliki fleksibilitas dengan memudahkan dalam mengakses data Anda di mana pun dan kapan pun jika terhubung dengan jaringan layanan/internet. Misalkan, jika Anda dapat mengakses data yang tersimpan di Google Drive dari komputer rumah, Anda juga dapat mengakses data tersebut dari smartphone atau perangkat lain yang terhubung dengan internet.

3. Memiliki skalabilitas yang tinggi
Keuntungan lainnya, Anda dapat menambah atau mengurangi spesifikasi/sumber daya dari kapasitas server yang digunakan. Misal, jika RAM Anda penuh karena banyaknya yang mengakses aplikasi Anda, Anda tidak perlu membeli RAM baru, tetapi cukup meminta kepada cloud provider untuk menambah/upgrade beberapa GB saja. Selain itu Anda juga dapat mengurangi/downgrade RAM ke spesifikasi semula.

4. Investasi.
Dengan teknologi cloud computing, Anda dapat menghemat biaya investasi untuk membeli sebuah server/komputer fisik. Misal, jika Anda memiliki perusahaan dan membutuhkan sumber daya yang besar dalam menjalankan aplikasi, Anda tidak perlu membeli hard drive baru dan tidak perlu juga memikirkan biaya-biaya lainnya seperti maintenance, listrik, lisensi, dan lain-lain. Walhasil, Anda dapat berorientasi pada profit dan perkembanga bisnis.

Akan tetapi, cloud computing pun memiliki beberapa kekurangan yang harus diantisipasi. Kekurangan itu antara lain: 

1. Kerahasiaan data tidak terjamin. 
Selalu ada risiko data user dapat diakses oleh orang lain yang tidak berkepentingan. 

2. Sangat bergantung pada koneksi internet. 
Internet merupakan satu-satunya jalan menuju cloud computing. Ketika tidak ada koneksi internet di tempat Anda, atau jalur internet menuju cloud provider sedang bermasalah, secara otomatis akses ke mesin cloud computing Anda akan terputus. 

3. Tingkat keamanan yang belum terjamin. 
Dengan menggunakan sistem komputasi awan berarti Anda mempercayakan sepenuhnya atas keamanan dan kerahasiaan data-data kepada cloud provider. Saat mengalami gangguan, Anda tidak dapat menuntut pihak server karena kesalahan data-data tersebut.


Sumber :
https://id.wikipedia.org/wiki/Komputasi_awan
http://pusatteknologi.com/pengertian-manfaat-cara-kerja-dan-contoh-cloud-computing.html
http://www.cloudindonesia.or.id/apa-itu-cloud-computing.html
https://infokomputer.grid.id/2015/12/fitur/mengenal-cloud-computing-kelebihan-kekurangan/

Rabu, 14 Maret 2018

Definisi, Sejarah dan Implementasi Komputasi Modern


Pengertian Komputasi
Komputasi adalah algoritma yang digunakan untuk menemukan suatu cara dalam memecahkan masalah dari sebuah data input. Data input disini adalah sebuah masukan yang berasal dari luar lingkungan sistem. Komputasi ini merupakan bagian dari ilmu komputer berpadu dengan ilmu matematika. Secara umum ilmu komputasi adalah bidang ilmu yang mempunyai perhatian pada penyusunan model matematika dan teknik penyelesaian numerik serta penggunaan komputer untuk menganalisis dan memecahkan masalah-masalah ilmu (sains). Dalam penggunaan secara umum, biasanya berupa penerapan simulasi komputer atau berbagai bidang keilmuan, tetapi dalam perkembangannya digunakan juga untuk menemukan prinsip-prinsip baru yang mendasar terhadap bidang ilmu yang mendasari teori ini. Bidang ini berbeda dengan ilmu komputer (computer science), yang mengkaji komputasi, komputer dan pemrosesan informasi. Bidang ini juga berbeda dengan teori dan percobaan sebagai bentuk tradisional dari ilmu dan kerja keilmuan. Dalam ilmu alam, pendekatan ilmu komputasi dapat memberikan berbagai pemahaman baru, melalui penerapan model-model matematika dalam program komputer berdasarkan landasan teori yang telah berkembang, untuk menyelesaikan masalah-masalah nyata dalam ilmu tersebut.

Pengertian Komputasi Modern
Komputasi modern adalah sebuah konsep sistem yang menerima intruksi-intruksi dan menyimpannya dalam sebuah memory, memory disini bisa juga dari memory komputer. Oleh karena pada saat ini kita melakukan komputasi menggunakan komputer maka bisa dibilang komputer merupakan sebuah komputasi modern. Konsep ini pertama kali digagasi oleh John Von Neumann (1903-1957). Beliau adalah ilmuan yang meletakkan dasar-dasar komputer modern. Von Neumann telah menjadi ilmuwan besar abad 21. Von Neumann memberikan berbagai sumbangsih dalam bidang matematika, teori kuantum, game theory, fisika nuklir, dan ilmu komputer yang di salurkan melalui karya-karyanya . Beliau juga merupakan salah satu ilmuwan yang terkait dalam pembuatan bom atom di Los Alamos pada Perang Dunia II lalu. Kegeniusannya dalam matematika telah terlihat semenjak kecil dengan mampu melakukan pembagian bilangan delapan digit (angka) di dalam kepalanya.

Dalam kerjanya komputasi modern menghitung dan mencari solusi dari masalah yang ada, dan perhitungan yang dilakukan itu meliputi :

1. Akurasi (big, Floating point)
2. Kecepatan (dalam satuan Hz)
3. Problem Volume Besar (Down Sizzing atau pararel)
4. Modeling (NN & GA)
5. Kompleksitas (Menggunakan Teori big O)


Karakteristik Komputasi Modern
1. Komputer-komputer penyedia sumber daya bersifat heterogenous karena terdiri dari berbagai jenis perangkat keras, sistem operasi, serta aplikasi yang terpasang.
2. Komputer-komputer terhubung ke jaringan yang luas dengan kapasitas bandwidth yang beragam.
3. Komputer maupun jaringan tidak terdedikasi, bisa hidup atau mati sewaktu-waktu tanpa jadwal yang jelas.


Macam - Macam Komputasi Modern
Sebelumnya jenis -jenis komputasi modern terbagi tiga macam, yaitu komputasi mobile (bergerak), komputasi grid, dan komputasi cloud (awan). Penjelasan lebih lanjut dari jenis-jenis komputasi modern sebagai berikut :

1. Mobile computing
Mobile computing atau komputasi bergerak memiliki beberapa penjelasan, salah satunya komputasi bergerak merupakan kemajuan teknologi komputer sehingga dapat berkomunikasi menggunakan jaringan tanpa menggunakan kabel dan mudah dibawa atau berpindah tempat, tetapi berbeda dengan komputasi nirkabel.
Dan berdasarkan penjelasan tersebut, untuk kemajuan teknologi ke arah yang lebih dinamis membutuhkan perubahan dari sisi manusia maupun alat. Dan dapat dilihat contoh dari perangkat komputasi bergerak seperti GPS, juga tipe dari komputasi bergerak seperti smart phone, dan lain sebagainya.

2. Grid computing
Komputasi grid menggunakan komputer yang terpisah oleh geografis, didistibusikan dan terhubung oleh jaringan untuk menyelasaikan masalah komputasi skala besar.
Ada beberapa daftar yang dapat dugunakan untuk mengenali sistem komputasi grid, adalah :
a. Sistem untuk koordinat sumber daya komputasi tidak dibawah kendali pusat.
b. Sistem menggunakan standard dan protocol yang terbuka.
c. Sistem mencoba mencapai kualitas pelayanan yang canggih, yang lebih baik diatas kualitas komponen individu pelayanan komputasi grid.

3. Cloud computing
Komputasi cloud merupakan gaya komputasi yang terukur dinamis dan sumber daya virtual yang sering menyediakan layanan melalui internet.
Komputasi cloud menggambarkan pelengkap baru, konsumsi dan layanan IT berbasis model dalam internet, dan biasanya melibatkan ketentuan dari keterukuran dinamis dan sumber daya virtual yang sering menyediakan layanan melalui internet.
Perbedaan antara komputasi mobile, grid, dan cloud :
a. Komputasi mobile menggunakan teknologi komputer yang bekerja seperti handphone, sedangkan komputasi grid dan cloud menggunakan komputer.
b. Biaya untuk tenaga komputasi mobile lebih mahal dibandingkan dengan komputasi grid dan cloud.
c. Komputasi mobile tidak membutuhkan tempat dan mudah dibawa kemana-mana, sedangkan grid dan cloud membutuhkan tempat yang khusus.
d. Untuk komputasi mobile proses tergantung si pengguna, komputasi grid proses tergantung pengguna mendapatkan server atau tidak, dan komputasi cloud prosesnya membutuhkan jaringan internet sebagai penghubungnya.


Model Komputasi
Komputasi memiliki 3 model, yaitu :
      
1. Mesin Mealy
Dalam teori komputasi sebagai konsep dasar sebuah komputer, mesin Mealy adalah otomasi fasa berhingga (finite state automaton atau finite state tranducer) yang menghasilkan keluaran berdasarkan fasa saat itu dan bagian masukan/input. Dalam hal ini, diagram fasa (state diagram) dari mesin Mealy memiliki sinyal masukan dan sinyal keluaran untuk tiap transisi. Prinsip ini berbeda dengan mesin Moore yang hanya menghasilkan keluaran/output pada tiap fasa. Nama Mealy diambil dari “G. H. Mealy” seorang perintis mesin-fasa (state-machine) yang menulis karangan “A Method for Synthesizing Sequential Circuits” pada tahun 1955.

2. Mesin Moore
Dalam teori komputasi sebagai prinsip dasar komputer, mesin Moore adalah otomasi fasa berhingga (finite state automaton) di mana keluarannya ditentukan hanya oleh fasa saat itu (dan tidak terpengaruh oleh bagian masukan/input). Diagram fasa (state diagram) dari mesin Moore memiliki sinyal keluaran untuk masing-masing fasa. Hal ini berbeda dengan mesin Mealy yang mempunyai keluaran untuk tiap transisi. Nama Moore diambil dari “Edward F. Moore” seorang ilmuwan komputer dan perintis mesin-fasa (state-machine) yang menulis karangan “Gedanken-experiments on Sequential Machines”.

3. Petri net
Petri net adalah salah satu model untuk merepresentasikan sistem terdistribusi diskret. Sebagai sebuah model, Petri net merupakan grafik 2 arah yang terdiri dari place, transition, dan tanda panah yang menghubungkan keduanya. Di samping itu, untuk merepresentasikan keadaan sistem, token diletakkan pada place tertentu. Ketika sebuah transition terpantik, token akan bertransisi sesuai tanda panah.


Sejarah Komputasi Modern
Komputasi modern ini pertama kalinya digagaskan oleh seorang ilmuan yang bernama John Von Neumann. Dialah orang yang pertama kali menggagaskan konsep sebuah sistem yang menerima intruksi-intruksi dan menyimpannya dalam sebuah memory. Konsep inilah yang menjadi dasar arsitektur komputer modern. John Von Neumann memberikan berbagai sumbangsihnya dengan cara meningkat karya – karyanya dalam bidang matematika, teori kuantum, game theory, fisika nuklir, dan ilmu komputer. Selain itu, Von Neumann juga merupakan seorang ilmuan yang sangat berperan penting dalam pembuatan bom atom di Los Alamos pada Perang Dunia II silam. Dan berkat kepiawaian Neumann di bidang teori game inilah ia bisa melahirkan konsep automata, teknologi bom atom dan komputasi modern yang akhirnya melahirkan sebuah computer.
Sebenarnya kata “komputer” tersebut pertama kali dipergunakan secara umum pada tahun 1613. Arti kata komputer itu sendiri mengacu kepada perhitungan aritmatika dan kata tersebut masih dipergunakan hingga pertengahan abad ke-20. Dan seiring dengan perkembangan jaman dari akhir abad ke-19 hingga seterusnya, “computer” menjadi berubah makna jadi sebuah mesin yang melakukan komputasi.
Kemudian sekitar tahun 1920an, kata “mesin komputasi” mulai dikenal. Setiap mesin yang dapat membantu melakukan pekerjaan manusia yaitunya menghitung dengan metode yang efektif, disebut dengan mesin komputasi. Pada tahun 1940-1950 dengan munculnya mesin komputasi elektronik kata “mesin komputasi” mulai berubah menjadi “komputer” yang biasanya diawali dengan “elektronik” atau “digital”.
Sejak saat itu, Von Neumann menjadi seorang konsultan pada pengembangan komputer ENIAC, Dia merancang konsep arsitektur komputer yang masih dipakai sampai sekarang. Arsitektur Von Nuemann adalah seperangkat komputer dengan program yang tersimpan (program dan data disimpan pada memori) dengan pengendali pusat, I/O, dan memori. Konsep dasar arsitektur komputer modern sendiri ialah konsep sebuah sistem yang menerima intruksi-intruksi dan menyimpannya dalam sebuah memory.


Implementasi Komputasi di Berbagai Bidang Ilmu Pengetahuan
1. Fisika : menyelesaikan permasalahan medan magnet dengan menggunakan komputasi fisika, dalam hal ini menentukan besarnya medan magnet dan membandiangkan hubungan antara medan magnet dengan panjang kawat. Implementasi komputasi modern di bidang fisika ada Computational Physics yang mempelajari suatu gabungan antara Fisika, Komputer Sains dan Matematika Terapan untuk memberikan solusi pada “Kejadian dan masalah yang kompleks pada dunia nyata” baik dengan menggunakan simulasi juga penggunaan algoritma yang tepat. Pemahaman fisika pada teori, eksperimen, dan komputasi haruslah sebanding, agar dihasilkan solusi numerik dan visualisasi / pemodelan yang tepat untuk memahami masalah Fisika.Untuk melakukan pekerjaan seperti evaluasi integral, penyelesaian persamaan differensial, penyelesaian persamaan simultan, mem-plot suatu fungsi/data, membuat pengembangan suatu seri fungsi, menemukan akar persamaan dan bekerja dengan bilangan kompleks yang menjadi tujuan penerapan fisika komputasi. Banyak perangkat lunak ataupun bahasa yang digunakan, baik MatLab, Visual Basic, Fortran, Open Source Physics (OSP), Labview, Mathematica, dan lain sebagainya digunakan untuk pemahaman dan pencarian solusi numerik dari masalah-masalah pada Fisika komputasi.

2. Kimia : algoritma dan program komputer dapat digunakan untuk memungkinkan peramalan sifat-sifat atom dan molekul. Kajian komputasi juga dapat dilakukan untuk menjelajahi mekanisme reaksi dan menjelaskan pengamatan pada reaksi di laboratorium, serta memahami sifat dan perubahan pada sistem makroskopis melalui simulasi yang berlandaskan hukum-hukum interaksi yang ada dalam sistem.

3. Matematika : penerapan teknik-teknik komputasi matematika meliputi metode numerik, scientific computing, metode elemen hingga, metode beda hingga, scientific data mining, scientific process control dan metode terkait lainnya untuk menyelesaikan masalah-masalah real yang berskala besar. Terdapat numerical analysis yaitu sebuah algoritma dipakai untuk menganalisa masalah – masalah matematika.Contohnya, penerapan teknik-teknik komputasi matematika meliputi metode numerik, scientific computing, metode elemen hingga, metode beda hingga, scientific data mining, scientific process control dan metode terkait lainnya untuk menyelesaikan masalah-masalah real yang berskala besar.

4. Ekonomi : mempeljarai titik pertemuan antara ekonomi dan komputasi, meliputi agent-based computational modelling, computational econometrics dan statistika, komputasi keuangan, computational modelling of dynamic macroeconomic systems dan pengembangan alat bantu dalam pendidikan komputasi ekonomi. Terdapat Computational Economics yang mempelajari titik pertemuan antara ilmu ekonomi dan ilmu komputer mencakup komputasi keuangan, statistika, pemrograman yang di desain khusus untuk komputasi ekonomi dan pengembangan alat bantu untuk pendidikan ekonomi.Contohnya, mempelajari titik pertemuan antara ekonomi dan komputasi, meliputi agent-based computational modelling, computational econometrics dan statistika, komputasi keuangan, computational modelling of dynamic macroeconomic systems dan pengembangan alat bantu dalam pendidikan komputasi ekonomi.

5. Biologi : merupakan penerapan berupa aplikasi dari teknologi informasi dan ilmu komputer terhadap bidang biologi molekuler.


6. Geografi : komputasi awan didefinisikan sebagai sebuah model yang memungkinkan kenyamanan, akses on-demand terhadap kumpulan sumber daya komputasi (contohnya jaringan, server, media penyimpanan, aplikasi, dan layanan komputasi) yang konfigurasinya dapat dilakukan dengan cepat dan disertai sedikit usaha untuk mengelola dan berhubungan dengan penyedia layanannya. Pada bidang geologi teori komputasi biasanya digunakan untuk pertambangan, sebuah sistem komputer digunakan untuk menganalisa bahan-bahan mineral dan barang tambang yang terdapat di dalam tanah. Contohnya, Pertambangan dan digunakan untuk menganalisa bahan-bahan mineral dan barang tambang yang terdapat di dalam tanah.


Source :

 
Copyright © Ezzooossss Softskill
Blogger Theme by BloggerThemes Sponsored by Internet Entrepreneur