Mata Kuliah: Pengantar Komputasi Modern ATA 2019/2020
Kelompok :
Fajar Satriatna (52416566)
Muhammad Ficki (54416852)
Trie Fauzan Febriansyah (57416443)
PENGANTAR KOMPUTASI MODERN
Teori
komputasi
Adalah cabang ilmu komputer dan matematika yang
membahas apakah dan bagaimanakah suatu masalah dapat dipecahkan pada model komputasi, menggunakan
algoritme. Bidang ilmu
ini terutama membahas hal terkait komputabilitas dan kompleksitas, dalam
kaitannya dengan formalisme komputasi.
Untuk melakukan studi komputasi
dengan ketat, ilmuwan komputer bekerja dengan abstraksi matematika dari
komputer yang dinamakan model komputasi. Ada beberapa model yang digunakan,
tetapi yang paling umum dipelajari adalah mesin Turing. Sebuah
mesin Turing dapat dipikirkan sebagai komputer pribadi meja dengan kapasitas memori yang tak
terhingga, tetapi hanya dapat diakses dalam bagian-bagian terpisah dan diskret.
Ilmuwan komputer mempelajari mesin Turing karena mudah dirumuskan, dianalisis
dan digunakan untuk pembuktian, dan karena mesin ini mewakili model komputasi
yang dianggap sebagai model paling masuk akal yang paling ampuh yang
dimungkinkan. Kapasitas memori tidak terbatas mungkin terlihat sebagai sifat
yang tidak mungkin terwujudkan, tetapi setiap permasalahan yang
"terputuskan" (decidable) yang dipecahkan oleh mesin Turing selalu
hanya akan memerlukan jumlah memori terhingga. Jadi pada dasarnya setiap
masalah yang dapat dipecahkan (diputuskan) oleh meisn Turing dapat dipecahkan
oleh komputer yang memiliki jumlah memori terbatas.
Implementasi
Adalah kegiatan yang dilakukan untuk menguji data
dan menerapkan sistem yang diperoleh dari kegiatan seleksi. Implementasi
merupakan salah satu pertahanan dari keseluruhan pembangunan sistem
komputerisasi dan unsur yang harus dipertimbangkan dalam pembangunan sistem
komputerisasi yaitu masalah perangkat lunak, karena perangkat lunak yang
digunakan haruslah sesuai dengan masalah yang akan diselesaikan disamping
masalah perangkat keras. Contoh aplikasi berbasis cloud computing adalah
salesforce.com, Google Docs. salesforce.com adalah aplikasi Customer
Relationship Management (CRM) berbasis software as services, dimana kita bisa
mengakses aplikasi bisnis: kontak, produk, sales tracking, dashboard, dll.
Google Docs adalah aplikasi word processor, spreadsheet, presentasi semacam
Microsoft Office, yang berbasis di server. Terintegrasi dengan Google Mail,
file tersimpan dan dapat di proses dari internet.
Di zaman/masa
modern saat ini perkembangan teknologi yang begitu cepat, Implementasi
Komputasi banyak digunakan untuk berbagai bidang. Seperti : Bidang Fisika,
Kimia, Matematika, Ekonomi, Geografi dan Geologi.
Penjelasan dari
ke-6 bidang tersebut, yaitu :
A.
Bidang Fisika
Implementasi
komputasi modern di bidang Fisika adalah 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 atau 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, seperti
: 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.
B.
Bidang Kimia
Implementasi
komputasi modern di bidang Kimia adalah Computational Chemistry yaitu
penggunaan ilmu komputer untuk membantu menyelesaikan masalah Kimia. Contohnya
penggunaan super komputer untuk menghitung struktur dan sifat molekul. Istilah
Kimia teori dapat didefinisikan sebagai deskripsi Matematika untuk Kimia,
sedangkan Kimia komputasi biasanya digunakan ketika metode Matematika
dikembangkan dengan cukup baik untuk dapat digunakan dalam program komputer.
Perlu dicatat bahwa kata “tepat” atau “sempurna” tidak muncul di sini, karena
sedikit sekali aspek Kimia yang dapat dihitung secara tepat. Hampir semua aspek
kimia dapat digambarkan dalam skema komputasi kualitatif atau kuantitatif
hampiran.
C.
Bidang Matematika
Menyelesaikan
sebuah masalah yang berkaitan dengan perhitungan Matematis, namun dalam
pengertian yang akan dibahas dalam pembahasan komputasi modern ini merupakan
sebuah sistem yang akan menyelesaikan masalah Matematis menggunakan komputer
dengan cara menyusun Algoritma yang dapat dimengerti oleh komputer yang berguna
untuk menyelesaikan masalah manusia.
D.
Bidang Ekonomi
Pemrograman yang
didesain khusus untuk komputasi Ekonomi dan pengembangan alat bantu dalam pendidikan
komputasi Ekonomi. Karena dibidang Ekonomi pasti memiliki permasalahan yang
harus dipecahkan oleh Algoritma. Contohnya adalah memecahkan teori statistika
untuk memecahkan permasalahan keuangan. Salah satu contoh komputasi di bidang
Ekonomi adalah komputasi statistik. Komputasi statistik adalah jurusan yang
mempelajari teknik pengolahan data, membuat program dan analisis data serta
teknik penyusunan sistem informasi statistik, seperti : penyusunan basis data,
komunikasi data, sistem jaringan, dan diseminasi data statistik.
E.
Bidang Geografi
Geografi adalah
ilmu yang mempelajari tentang lokasi serta persamaan dan perbedaan (variasi)
keruangan atas fenomena fisik dan manusia di atas permukaan bumi. Komputasi
dalam bidang Geografi biasanya di gunakan untuk peramalan cuaca, di Indonesia
khususnya ada salah satu instansi Negara dengan nama BMKG (Badan Meteorologi
Klimatologi dan Geofisika) yakni instansi negara yang meneliti mengamati
tentang Metereologi, Klimatologi kualitas udara dan Geofisika supaya tetap
sesuai dengan perundang undangan yang berlaku di Indonesia.
F.
Bidang Geologi
Geologi merupakan
cabang Ilmu sains yang mempelajari tentang Bumi. Yakni komposisi, struktur ,
sifat-sifat, sejarah dan proses, komputasi Geologi umumnya digunakan dibidang
pertambangan sebuah sistem komputer digunakan untuk menganalisa bahan-bahan
mineral dan barang tambang yang terdapat didalam tanah. Implementasi pada
bidang ini untuk memetakan letak sumber daya dan kontur dari permukaan bumi
yang terdapat hasil tambang.
Pengantar Komputasi Cloud
Pendahuluan
Perkembangan teknologi di era
ini menggunakan konsep – konsep seperti social networking, open, share,
colaborations, mobile, easy maintenance, one click, terdistribusi, scalability,
concurency, dan transparan. Sampai saat ini trend teknologi Cloud Computing
masih terus diteliti dalam penelitian – penelitian para pakar IT dunia. Dengan
berbagai kelebihan dan kekurangan, Cloud Computing hadir dengan memudahkan
akses data dari mana saja dan kapan saja, karena dengan memanfaatkan internet
dan menggunakan perangkat fixed atau mobile device menggunakan internet cloud
sebagai tempat penyimpanan data, aplikasi dan lainya. Teknologi ini akan
memberikan banyak keuntungan baik dari sisi pemberi layanan (provider) atau dari
sisi user. Penerapan teknologi ini memberikan dampak yang sangat signifikan
bagi pengembangan teknologi itu sendiri, baik dari sisi pengguna maupun dari
sisi industri.
Pengguna diuntungkan dengan
semakin mudahnya memperoleh atau mengunduh data secara cepat dan mudah karena
banyak layanan yang dibuka oleh pihak industri. Keuntungan bagi pihak industri
pun tidak kalah besar dengan kemudahan yang didapat oleh pengguna, karena
dengan semakin majunya teknologi cloud computing akan semakin memudahkan
industri untuk memasarkan produk dan menyebarkan informasi secara meluas
keseluruh penjuru dunia. Secara umum, definisi cloud computing (komputasi
awan) merupakan gabungan pemanfaatan teknologi komputer (komputasi) dalam suatu
jaringan dengan pengembangan berbasis internet (awan) yang mempunyai fungsi
untuk menjalankan program atau aplikasi melalui komputer – komputer yang
terkoneksi pada waktu yang sama, tetapi tak semua yang terkonekasi melalui
internet menggunakan cloud computing.
Teknologi komputer berbasis
sistem Cloud ini merupakan sebuah teknologi yang menjadikan internet sebagai
pusat server untuk mengelola data dan juga aplikasi pengguna. Teknologi ini
mengizinkan para pengguna untuk menjalankan program tanpa instalasi dan
mengizinkan pengguna untuk mengakses data pribadi mereka melalui komputer
dengan akses internet.
Komputasi Grid adalah
penggunaan sumber daya yang melibatkan banyak komputer yang terdistribusi dan
terpisah secara geografis untuk memecahkan persoalan komputasi dalam skala
besar. Grid computing merupakan cabang dari distributed computing.Grid komputer
memiliki perbedaan yang lebih menonjol dan di terapakan pada sisi infrastruktur
dari penyelesaian suatu proses. Grid computing adalah suatu bentuk cluster
(gabungan) komputer-komputer yang cenderung tak terikat batasan geografi. Di
sisi lain, cluster selalu diimplementasikan dalam satu tempat dengan
menggabungkan banyak komputer lewat jaringan.
KONSEP GRID COMPUTING
Beberapa konsep dasar dari grid
computing :
1.
Sumber daya
dikelola dan dikendalikan secara lokal.
2.
Sumber daya
berbeda dapat mempunyai kebijakan dan mekanisme berbeda, mencakup Sumber daya
komputasi dikelola oleh sistem batch berbeda, Sistem storage berbeda pada node
berbeda, Kebijakan berbeda dipercayakan kepada user yang sama pada sumber daya
berbeda pada Grid.
3.
Sifat alami
dinamis: Sumber daya dan pengguna dapat sering berubah
4.
Lingkungan
kolaboratif bagi e-community (komunitas elektronik, di internet)
5.
Tiga hal
yang di-,sharing dalam sebuah sistem grid, antara lain : Resource, Network dan
Proses. Kegunaan / layanan dari sistem grid sendiri adalah untuk melakukan high
throughput computing dibidang penelitian, ataupun proses komputasi lain yang
memerlukan banyak resource komputer.
Contoh Grid Computing:
1.
Scientific
Simulation. Komputasi grid diimplementasikan di bidang fisika, kimia, dan
biologi untuk melakukan simulasi terhadap proses yang kompleks.
2.
Medical
Image. Penggunaan data grid dan komputasi grid untuk menyimpan medical-image.
Contohnya adalah eDiaMoND project
3.
Computer-Aided
Drug Discovery (CADD)Komputasi grid digunakan untuk membantu penemuan obat.
Salah satu contohnya adalah: Molecular Modeling Laboratory (MML) di University
of North Carolina (UNC).
4.
Big
Science. Data grid dan komputasi grid digunakan untuk membantu proyek
laboratorium yang disponsori oleh pemerintah Contohnya terdapat di DEISA.
5.
E-Learning.
Komputasi grid membantu membangun infrastruktur untuk memenuhi kebutuhan dalam
pertukaran informasi dibidang pendidikan. Contohnya adalah AccessGrid.
6.
Visualization.
Komputasi grid digunakan untuk membantu proses visualisasi perhitungan yang
rumit.
7. Microprocessor design. Komputasi grid membantu untuk
mengurangi microprocessor design cycle dan memudahkan design center untuk
membagikan resource lebih efisien. Contohnya ada diMicroprocessor Design Group
at IBM Austin.
Manfaat Komputasi Grid
1.
Penggunaan
Grid Computing System untuk perusahaan-perusahaan akan banyak memberikan
manfaat, baik manfaat secara langsung maupun tidak langsung. Beberapa manfaat
tersebut antara lain :
2.
Grid
computing menjanjikan peningkatan utilitas, dan fleksibilitas yang lebih besar
untuk sumberdaya infrastruktur, aplikasi dan informasi. Dan juga menjanjikan
peningkatan produktivitas kerja perusahaan.
3.
Grid
computing bisa memberi penghematan uang, baik dari sisi investasi modal maupun
operating cost–nya
4.
Manajemen
institusi yang terlalu birokratis menyebabkan mereka enggan untuk merelakan
fasilitas yang dimiliki untuk digunakan secara bersama agar mendapatkan manfaat
yan lebih besar bagi masyarakat luas.
5.
Masih
sedikitnya Sumber Daya Manusia yang kompeten dalam mengelola grid computing.
Contonhya kurangnya pengetahuan yang mencukupi bagi teknisi IT maupun user non
teknisi mengenai manfaat dari grid computing itu sendiri.
Virtualisasi
Ada dua istilah yang sedang
popouler saat ini dalam hal teknologi komputasi, yaitu Virtualisasi dan Cloud
computing, namun saat ini sepertinya banyak yang menganggap bahwa virtualisasi
dan cloud computing adalah hal yang sama, padahal sebenarnya cloud computing
itu lebih dari sekedar virtualisasi.
Virtualisasi adalah sebuah
teknologi, yang memungkinkan anda untuk membuat versi virtual dari sesuatu yang
bersifat fisik, misalnya sistem operasi, storage data atau sumber daya
jaringan. Proses tersebut dilakukan oleh sebuah software atau firmware bernama
Hypervisor. Hypervisor inilah yang menjadi nyawanya virtualisasi, karena dialah
layer yang “berpura – pura” menjadi sebuah infrastruktur untuk menjalankan
beberapa virtual machine. Dalam prakteknya, dengan membeli dan memiliki satu
buah mesin, anda seolah – olah memiliki banyak server, sehingga anda bisa
mengurangi pengeluaran IT untuk pembelian server baru, komponen, storage, dan
software pendukung lainnya.
Dalam hardware
virtualization, perangkat lunak bekerja membentuk sebuah virtual machine yang
bertindak seolah-olah seperti sebuah komputer asli dengan sebuah sistem operasi
terinstall di dalamnya. Salah contoh yang mudah misalkan terdapat satu buah
komputer yang telah terinstall GNU/Linux Ubuntu. Kemudian dengan menggunakan
perangkat lunak virtualization semisal Virtualbox kita dapat menginstall dua
buah sistem operasi lain sebagai contoh Windows XP dan FreeBSD.
Sistem operasi yang
terinstall di komputer secara fisik dalam hal ini GNU/Linux Lubuntudisebut sebagai host
machine sedangkan sistem operasi yang diinstall diatasnya dinamakan guest
machine. Istilah host dan guest dikenalkan untuk memudahkan dalam membedakan
antara sistem operasi fisik yang terinstall di komputer dengan sistem operasi
yang diinstall diatasnya atau virtualnya.
Perangkat lunak yang
digunakan untuk menciptakan virtual machine pada host machine biasa disebut
sebagai hypervisor atau Virtual Machine Monitor (VMM). Menurut Robert P.
Goldberg pada tesisnya yang berjudul “Architectural Principles For Virtual
Computer Systems” pada hal 23 menyebutkan bahwa tipe-tipe dari VMM ada 2 yaitu
:
·
Type
1 berjalan pada fisik komputer yang ada secara langsung.
Pada jenis ini hypervisor / VMM benar-benar mengontrol perangkat keras dari
komputer host-nya. Termasuk mengontrol sistem operasi-sistem operasi guest-nya.
Contoh implementasi yang ada dan sudah saya coba secara langsung ialah VMWare
ESXi. Adapun contoh yang lain yang ada seperti Microsoft Hyper-V
·
Type
2 berjalan pada sistem operasi diatasnya. Pada tipe ini
tentunya guest sistem operasi nya berada di layer diatasnya lagi.
Distributed Computation
dalam Cloud Computing
Komputasi terdistribusi
merupakan bidang ilmu komputer yang mempelajari sistem terdistribusi. Sebuah
sistem terdistribusi terdiri dari beberapa komputer otonom yang berkomunikasi
melalui jaringan komputer. Komputer yang saling berinteraksi untuk mencapai
tujuan bersama. Suatu program komputer yang berjalan dalam sistem terdistribusi
disebut program didistribusikan, dan didistribusikan pemrograman adalah proses
menulis program tersebut. Distributed computing juga mengacu pada penggunaan
sistem terdistribusi untuk memecahkan masalah komputasi. Dalam distributed
computing, masalah dibagi menjadi banyak tugas, masing-masing yang diselesaikan
oleh satu komputer.
Kegiatan ini merupakan
kumpulan beberapa computer yang terhubung untuk melakukan pendistribusian,
seperti mengirim dan menerima data serta melakukan interaksi lain antar
computer yang dimana membutuhkan sebuah jaringan agar computer satu dan lainnya
bisa saling berhubung dan melakukan interaksi. Hal ini semua dilakukan dengan
cloud computing yang seperti kita ketahui memberikan layanan dimana
informasinya disimpan di server secara permanen dan disimpan di computer client
secara temporary.
Komputasi Terdistribusi
merupakan salah satu tujuan dari Cloud Computing, karena menawarkan pengaksesan
sumber daya secara parallel, para pengguna juga bisa memanfaatkannya secara
bersamaan (tidak harus menunggu dalam antrian untuk mendapatkan pelayanan),
terdiri dari banyak sistem sehingga jika salah satu sistem crash, sistem lain
tidak akan terpengaruh, dapat menghemat biaya operasional karena tidak
membutuhkan sumber daya (resourches).
Distribusi komputasi ini
memiliki definisi mempelajari penggunaan terkoordinasi dari computer secara
fisik terpisah atau terdistribusi. Pada distributed computing ini, program
dipisah menjadi beberapa bagian yang dijalankan secara bersamaan pada banyak
computer yang terhubung melalui jaringan internet.
Map Reduce dan No SQL
Map-Reduce adalah salah satu
konsep teknis yang sangat penting di dalam teknologi cloud terutama karena
dapat diterapkannya dalam lingkungan distributed computing. Dengan demikian
akan menjamin skalabilitas aplikasi kita. Salah satu contoh penerapan nyata
map-reduce ini dalam suatu produk adalah yang dilakukan Google. Dengan
inspirasi dari functional programming map dan reduce Google bisa menghasilkan
filesystem distributed yang sangat scalable, Google Big Table. Dan juga
terinspirasi dari Google, pada ranah open source terlihat percepatan
pengembangan framework lainnya yang juga bersifat terdistribusi dan menggunakan
konsep yang sama, project open source tersebut bernama Apache Hadoop.
NoSQL adalah istilah untuk
menyatakan berbagai hal yang didalamnya termasuk database sederhana yang
berisikan key dan value seperti Memcache, ataupun yang lebih canggih yaitu
non-database relational seperti MongoDB, Cassandra, CouchDB, dan yang lainnya.
Wikipedia menyatakan NoSQL
adalah sistem menejemen database yang berbeda dari sistem menejemen database
relasional yang klasik dalam beberapa hal. NoSQL mungkin tidak membutuhkan
skema table dan umumnya menghindari operasi join dan berkembang secara
horisontal. Akademisi menyebut database seperti ini sebagai structured storage,
istilah yang didalamnya mencakup sistem menejemen database relasional.
No SQL Database
Database NoSQL, juga disebut
Not Only SQL, adalah sebuah pendekatan untuk pengelolaan data dan desain
database yang berguna untuk set yang sangat besar data
terdistribusi. NoSQL, yang mencakup berbagai teknologi dan arsitektur,
berusaha untuk memecahkan masalah skalabilitas dan kinerja data yang besar yang
database relasional tidak dirancang untuk menangani. NoSQL ini sangat berguna
ketika perusahaan perlu untuk mengakses dan menganalisis sejumlah besar data
terstruktur atau data yang disimpan dari jarak jauh pada beberapa virtual
server di awan.
Berlawanan dengan
kesalahpahaman yang disebabkan oleh namanya, NoSQL tidak melarang bahasa query
terstruktur (SQL). Meskipun benar bahwa beberapa sistem NoSQL sepenuhnya
non-relasional, yang lain hanya menghindari fungsi relasional dipilih seperti
skema tabel tetap dan bergabung dengan operasi. Sebagai contoh, daripada
menggunakan tabel, database NoSQL mungkin mengatur data menjadi objek, kunci /
nilai berpasangan atau tupel.
Quantum
Computation
Komputer
kuantum adalah alat hitung yang menggunakan sebuah fenomena mekanika
kuantum, misalnya superposition dan entanglement, untuk
melakukan operasi data. 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.
Walaupun komputer kuantum masih dalam pengembangan, telah
dilakukan eksperimen dimana operasi komputasi kuantum dilakukan atas sejumlah
kecil Qubit. Riset baik secara teoretis maupun praktik terus berlanjut
dalam laju yang cepat, dan banyak pemerintah nasional dan agensi pendanaan
militer mendukung riset komputer kuantum untuk pengembangannya baik untuk
keperluan rakyat maupun masalah keamanan nasional seperti kriptoanalisis.
Engtanglement
Quantum
entanglement adalah bagian dari fenomena mechanical quantum yang menyatakan
bahwa dua atau lebih objek dapat digambarkan mempunyai hubungan dengan objek
lainnya walaupun objek tersebut berdiri sendiri dan terpisah dengan objek
lainnya. Entangled
system didefinisikan sebagai sistem yang status kuantumnya tidak dapat
diperhitungkan sebagai produk dari keadaan konstituen lokalnya; artinya, mereka
bukan partikel individu tetapi merupakan keseluruhan yang tidak terpisahkan.
Dalam entanglement, satu konstituen tidak dapat sepenuhnya dijelaskan tanpa
mempertimbangkan yang lainnya. Perhatikan bahwa keadaan sistem komposit selalu
dapat dinyatakan sebagai penjumlahan, atau superposisi, produk-produk dari
keadaan konstituen lokal; maka sistem memiliki lebih dari satu istilah adalah
entangled system.
Sebuah fitur pembeda yang penting antara qubit dan bit klasik
adalah bahwa beberapa qubit dapat menunjukkan belitan kuantum. Keterikatan
adalah properti nonlokal yang memungkinkan seperangkat qubit untuk menyatakan
korelasi yang lebih tinggi daripada yang mungkin dalam sistem klasik. Ambil,
misalnya, dua qubit yang berhubungan dalam Bell state.
Entanglement
juga memungkinkan beberapa states untuk berlangsung secara bersamaan, tidak
seperti bit klasik yang hanya dapat memiliki satu nilai pada satu waktu.
Entanglement dalam quantum computing adalah unsur penting dari perhitungan
kuantum yang tidak dapat dilakukan secara efisien pada komputer klasik. Banyak
keberhasilan komputasi dan komunikasi kuantum, seperti teleportasi kuantum dan
superdense coding, menunjukkan bahwa entanglement adalah sumber daya yang unik
untuk quantum computing. Dengan demikian, setiap komputasi quantum yang tidak
melibatkan qubit yang mempunyai entanglement dapat dilakukan dengan efisiensi
yang sama denegan komputasi menggunakan bit klasik.
Pengoperasian
Data Qubit
Qubit
(Kuantum Bit) merupakan mitra dalam komputasi kuantum dengan digit biner atau
bit dari komputasi klasik. Qubit adalah unit dasar informasi dalam komputer
kuantum. Dalam komputer kuantum, sejumlah partikel elemental seperti elektron
atau foton dapat digunakan, baik dengan biaya maupun polarisasi yang bertindak
sebagai representasi dari 0 dan/atau 1. Setiap partikel-partikel ini dikenal
sebagai qubit. Sifat dan perilaku partikel-partikel ini membentuk dasar dari
komputasi kuantum.
Bit digambarkan oleh
status 0 atau 1. Begitu pula dengan qubit yang digambarkan oleh status quantum.
Dua status quantum yang potensial untuk qubit ekuivalen dengan 0 dan 1 bit
klasik. Namun, dalam mekanika quantum, objek apapun yang memiliki dua status
berbeda pasti memiliki rangkaian status potensial lain atau disebut dengan
superposisi yang menjerat kedua status hingga derajat bermacam-macam.
Komputer kuantum
memelihara urutan qubit. Sebuah qubit tunggal dapat mewakili satu, nol, atau,
penting, setiap superposisi quantum ini, apalagi sepasang qubit dapat dalam
superposisi kuantum dari 4 negara, dan tiga qubit dalam superposisi dari 8.
Secara umum komputer kuantum dengan qubit n bisa dalam superposisi
sewenang-wenang hingga 2 n negara bagian yang berbeda secara bersamaan (ini
dibandingkan dengan komputer normal yang hanya dapat di salah satu negara n 2
pada satu waktu). Komputer kuantum yang beroperasi dengan memanipulasi qubit
dengan urutan tetap gerbang logika quantum. Urutan gerbang untuk diterapkan
disebut algoritma quantum.
Sebuah contoh dari
implementasi qubit untuk komputer kuantum bisa mulai dengan menggunakan
partikel dengan dua putaran menyatakan: “down” dan “up”. Namun pada
kenyataannya sistem yang memiliki suatu diamati dalam jumlah yang akan kekal
dalam waktu evolusi dan seperti bahwa A memiliki setidaknya dua diskrit dan
cukup spasi berturut-turut eigen nilai , adalah kandidat yang cocok untuk
menerapkan sebuah qubit. Hal ini benar karena setiap sistem tersebut dapat
dipetakan ke yang efektif spin -1/2 sistem.
Quantum
Gates
Quantum
Gates adalah sebuah gerbang kuantum yang dimana berfungsi mengoperasikan bit
yang terdiri dari 0 dan 1 menjadi qubits. dengan demikian Quantum gates
mempercepat banyaknya perhitungan bit pada waktu bersamaan. Quantum Gates adalah
blok bangunan sirkuit kuantum, seperti klasik gerbang logika yang untuk sirkuit
digital konvensional.
Quantum Gates / Gerbang Quantum
merupakan sebuah aturan logika / gerbang logika yang berlaku pada quantum
computing. Prinsip kerja dari quantum gates hampir sama dengan gerbang logika
pada komputer digital. Jika pada komputer digital terdapat beberapa operasi
logika seperti AND, OR, NOT, pada quantum computing gerbang quantum terdiri
dari beberapa bilangan qubits, sehingga quantum gates lebih susah untuk
dihitung daripada gerang logika pada komputer digital.
Sebuah gerbang kuantum memanipulasi superposition
input , mengubah kemungkinan dan menghasilkan superposition lain sebagai
output. Jadi , sebuah computer kuantum memiliki satu set qubits , melewatkannya
pada gerbang kuantum dan memanipulasi kemungkinan, dan akhirnya mengukur
hasilnya untuk menghilangkan superposition , akan menghasilkan urutan nilai 0
dan 1. Hal ini berarti semua hasil kalkulasi yang mungkin dari pengaturan anda
akan selesai pada saat yang bersamaan.
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.
Parallel Computation
Parallel
Computation atau 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. 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.
Parallelism
Concept
Komputasi paralel adalah salah satu teknik
melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer
secara bersamaan. Biasanya diperlukan saat kapasitas yang diperlukan sangat
besar, baik karena harus mengolah datadalam jumlah besar ataupun karena
tuntutan proses komputasi yang banyak. Untuk melakukan aneka jenis komputasi
paralel ini diperlukan infrastruktur mesin paralel yang terdiridari banyak
komputer yang dihubungkan dengan jaringan dan mampu bekerja secara paralel untuk
menyelesaikan satu masalah. Untuk itu diperlukan aneka perangkat lunak
pendukung yang biasa disebut sebagai middleware yang berperan untuk mengatur
distribusi pekerjaan antar node dalam satu mesin paralel. Selanjutnya pemakai
harus membuat pemrograman paralel untuk merealisasikan komputasi.
Distributed
Processing
Pemrograman Paralel sendiri adalah teknik
pemrograman komputer yang memungkinkan eksekusi perintah/operasi secara
bersamaan. Bila komputer yang digunakan secara bersamaan tersebut dilakukan oleh
komputer-komputer terpisah yang terhubung dalam satu jaringan komputer,
biasanya disebut sistem terdistribusi. Bahasa pemrograman yang populer
digunakan dalam pemrograman paralel adalah MPI (Message Passing Interface) dan
PVM (Parallel Virtual Machine).
Architectural
Parallel Computer
·
SISD (Single Instruction Single
Datapath) merupakan prosesor tunggal, yang bukan paralel.
·
SIMD (Single Instruction Multiple
Datapath)alur instruksi yang sama dijalankan terhadap banyak alur data yang
berbeda. Alur instruksi di sini kalau tidak salah maksudnya ya program komputer
itu. trus datapath itu paling ya inputnya, jadi inputnya lain-lain tapi program
yang digunakan sama.
·
MIMD (Multiple Instruction Multiple
Datapath)alur instruksinya banyak, alur datanya juga banyak, tapi masing-masing
bisa berinteraksi.
·
MISD (Multiple Instruction Single
Datapath)alur instruksinya banyak tapi beroperasi pada data yang sama.
Pengantar
Thread Programming
Threading / Thread adalah sebuah alur
kontrol dari sebuah proses. Konsep threading adalah menjalankan 2 proses (
proses yang sama atau proses yang berbeda) dalam satu waktu. Contohnya sebuah
web browser mempunyai thread untuk menampilkan gambar atau tulisan sedangkan
thread yang lain berfungsi sebagai penerima data dari network. Threading dibagi
menjadi 2 :
·
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.
·
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. Concurrency platform ini menyediakan
scheduler yang melakukan load balacing secara otomatis. Walaupun platformnya
masih dalam pengembangan namun secara umum mendukung dua fitur : nested
parallelism dan parallel loops.
Pengantar
Message Passing, Open MP
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. Objek didistribusikan dan metode sistem remote doa seperti ONC
RPC , CORBA , Java RMI , DCOM , SOAP , . NET Remoting , CTO , QNX Neutrino RTOS
, OpenBinder , D-Bus , Unison RTOS dan serupa pesan lewat sistem.Paradigma
Message passing yaitu :
1. Banyak
contoh dari paradigma sekuensial dipertimbangkan bersama-sama.
2. Programmer
membayangkan beberapa prosesor, masing-masing dengan memori, dan menulis sebuah
program untuk berjalan pada setiap prosesor.
3. 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.
Pengantar
Pemograman CUDA CPU
GPU ( Graphical Processing Unit ) awalnya
adalah sebuah prosesor yang berfungsi khusus untuk melakukan rendering pada
kartu grafik saja, tetapi seiring dengan semakin meningkatnya kebutuhan
rendering, terutama untuk mendekati waktu proses yang realtime, maka meningkat
pula kemampuan prosesor grafik tersebut. akselerasi peningkatan teknologi GPU
ini lebih cepat daripada peningkatan teknologi prosesor sesungguhnya ( CPU ),
dan pada akhirnya GPU menjadi General Purpose, yang artinya tidak lagi hanya
untuk melakukan rendering saja melainkan bisa untuk proses komputasi secara
umum.
Penggunaan Multi GPU dapat mempercepat waktu
proses dalam mengeksekusi program karena arsitekturnya yang natively parallel.
Selain itu Peningkatan performa yang terjadi tidak hanya berdasarkan kecepatan
hardware GPU saja, tetapi faktor yang lebih penting adalah cara membuat kode
program yang benarbenar bisa efektif berjalan pada Multi GPU.
CUDA merupakan teknologi anyar dari produsen
kartu grafis Nvidia, dan mungkin belum banyak digunakan orang secara umum.
Kartu grafis lebih banyak digunakan untuk menjalankan aplikasi game, namun
dengan teknologi CUDA ini kartu grafis dapat digunakan lebih optimal ketika
menjalankan sebuah software aplikasi. Fungsi kartu grafis Nvidia digunakan
untuk membantu Processor (CPU) dalam melakukan kalkulasi dalam proses data.
CUDA merupakan singkatan dari Compute Unified
Device Architecture, didefinisikan sebagai sebuah arsitektur komputer parallel,
dikembangkan oleh Nvidia. Teknologi ini dapat digunakan untuk menjalankan
proses pengolahan gambar, video, rendering 3D, dan lain sebagainya. VGA – VGA
dari Nvidia yang sudah menggunakan teknologi CUDA antara lain : Nvidia GeForce
GTX 280, GTX 260,9800 GX2, 9800 GTX+,9800 GTX,9800 GT,9600 GSO, 9600 GT,9500
GT,9400 GT,9400 mGPU,9300 mGPU,8800 Ultra,8800 GTX,8800 GTS,8800 GT,8800
GS,8600 GTS,8600 GT,8500 GT,8400 GS, 8300 mGPU, 8200 mGPU, 8100 mGPU, dan seri
sejenis untuk kelas mobile ( VGA notebook ).
Singkatnya, CUDA dapat memberikan proses
dengan pendekatan bahasa C, sehingga programmer atau pengembang software dapat
lebih cepat menyelesaikan perhitungan yang komplek. Bukan hanya aplikasi
seperti teknologi ilmu pengetahuan yang spesifik. CUDA sekarang bisa
dimanfaatkan untuk aplikasi multimedia. Misalnya meng-edit film dan melakukan
filter gambar. Sebagai contoh dengan aplikasi multimedia, sudah mengunakan
teknologi CUDA. Software TMPGenc 4.0 misalnya membuat aplikasi editing dengan
mengambil sebagian proces dari GPU dan CPU. VGA yang dapat memanfaatkan CUDA
hanya versi 8000 atau lebih tinggi.
Soal:
1.
Apa yang dimaksud
dengan Parallel Computation?
3. Apa yang dimaksud dengan implementasi?
4. Apa yang dimaksud dengan cloud computing?
5.
Yang dimaksud dengan
Entanglement pada Quantum Computation adalah?
6.
Apa yang dimaksud
dengan virtualisasi?
7.
Terbagi menjadi berapa
thread programming? Sebutkan!
8.
Apa yang dimaksud
dengan CUDA?
9.
Teknik ini
biasa digunakan untuk komputer dengan chip multiprocessors dan jenis komputer
shared-memory lainnya, merupakan thread?
10. Sebutkan Architectural Parallel Computer!
11. bagaimana
komputer kuantum memelihara urutan qubit?
Daftar
Pustaka:
https://id.wikipedia.org/wiki/Teori_komputasi
Komputasi Parallel by
dewi_anggraini.staff.gunadarma.ac.id
Komentar
Posting Komentar