Powered By Blogger

Jumat, 13 Juni 2014

Grid Computing

Komputasi Grid adalah penggunaan sumber daya yang melibatkan banyak komputer yang terdistribusi dan terpisah secara geografis untuk memecahkan persoalan komputasi dalam skala besar. 

Komputasi Grid dibangun dengan cara menggabungkan seluruh sistem komputasi grid yang ada di institusi-institusi penelitian menjadi sebuah kesatuan. Pengaturan perangkat keras dan perangkat lunak pada masing-masing sistem di tingkat institusi kemungkinan berbeda, namun dengan menjalankan teknologi komputasi grid dengan menggabungkan simpul-simpul penghubung dari masing-masing sistem, maka akan terbentuk sebuah kesatuan sumber daya komputasi grid.


Ada 3 karakteristik ciri utama dari suatu sistem grid, yaitu :
  • Tidak ada kontrol terhadap resource yang controlized
  • Memiliki kesamaan standar protokol, misal TCP/IP
  • Memberikan layanan yang canggih
Tiga hal yang di-sharing dalam sebuah sistem grid, antara lain resource, network dan process. Kegunaan dari layanan sistem grid sendiri adalah untuk melakukan high through put computing dibidang penelitian, ataupun proses komputasi lain yang memerlukan banyak resource komputer.

Kelebihan Komputasi Grid antara lain :

  • Perkalian dari sumber daya (Resource Pool dari CPU dan storage tersedia ketika idle).
  • Lebih cepat dan lebih besar. Komputasi simulasi dan penyelesaian masalah dapat berjalan lebih cepat dan mencakup domain yang lebih luas.
  • Perangkat lunak dan aplikasi (Pool dari aplikasi dan pustaka standar, akses terhadap model dan perangkat berbeda, metologi penelitian yang lebih baik).
  • Data (Akses terhadap sumber data global dan hasil penelitian lebih baik).
  • Ukuran dan kompleksitas dari masalah mengharuskan orang-orang dalam beberapa organisasi berkolaborasi dan berbagi sumber daya komputasi, data dan instrumen sehingga terwujud bentuk organisasi baru yaitu virtual organization).

Kekurangan Komputasi Grid antara lain :
  • Menejemen institusi yang terlalu birokratis menyebabkan mereka enggan untuk merelakan fasilitas yang dimiliki untuk digunakan secara bersama agar mendapatkan manfaat yang lebih besar bagi masyarakat luas.
  • Masih sedikitnya sumber daya manusia yang kompeten dalam mengelola komputasi grid.
  • Kurangnya pengetahuan yang mencukupi bagi teknisi IT maupun user non teknisi mengenai manfaat dari komputasi grid itu sendiri.


Solusi yang bisa diambil antara lain :
  • Memberikan sosialisasi pada instansi pendidikan maupun institusi non pendidikan mengenai manfaat serta biaya dengan menggunakan sistem komputasi grid.
  • Kerjasama riset dan pengembangan antara departemen dalam suatu perguruan tinggi dan industri.
  • Diberikannya mata kuliah tentang Komputasi Grid sehingga dapat menghasilkan generasi yang menguasai teknologi ini.
  • Adanya pengembangan aplikasi yang relevan dengan Komputasi Grid.




Sumber :


Jumat, 16 Mei 2014

Quantum Computing


Pengertian Quantum Computing 

Quantum computing adalah perangkat untuk perhitungan yang menggunakan langsung dari fenomena kuantum mekanik, seperti superposisi dan belitan, untuk melakukan operasi pada data. Quantum komputer berbeda dari komputer digital berdasarkan transistor. komputer digital membutuhkan data yang akan dikodekan menjadi digit biner (bit), komputasi kuantum menggunakan properti kuantum untuk mewakili data dan melakukan operasi pada data ini. Sebuah model teoritis adalah kuantum Turing mesin, juga dikenal sebagai komputer kuantum universal. Quantum komputer berbagi kesamaan teoritis dengan komputer non-deterministik dan probabilistik, seperti kemampuan untuk berada dalam lebih dari satu negara secara bersamaan. Bidang komputasi kuantum pertama kali diperkenalkan oleh Richard Feynman pada tahun 1982. Meskipun komputasi kuantum masih dalam masa pertumbuhan, percobaan telah dilakukan dimana operasi komputasi kuantum dieksekusi pada sejumlah sangat kecil dari qubit (quantum bit). Kedua penelitian praktis dan teoritis terus berlanjut, dan pemerintah nasional dan lembaga pendanaan militer mendukung penelitian komputasi kuantum untuk mengembangkan komputer kuantum untuk tujuan keamanan baik sipil maupun nasional, seperti pembacaan sandi.



Implementasi Quantum Computing

Quantum komputer tidak terbatas pada dua negara, mereka menyandikan informasi sebagai bit kuantum, atau qubit, yang bisa eksis dalam superposisi. Qubit mewakili atom, ion, foton atau elektron dan perangkat kontrol masing-masing yang bekerja sama untuk bertindak sebagai memori komputer dan prosesor. Karena komputer kuantum dapat berisi negara-negara ini secara bersamaan, ia memiliki potensi untuk menjadi jutaan kali lebih kuat daripada super komputer saat ini paling kuat.
Quantum komputer juga memanfaatkan aspek lain dari mekanika kuantum yang dikenal sebagai belitan. Satu masalah dengan ide komputer kuantum adalah bahwa jika Anda mencoba untuk melihat partikel subatomik, Anda bisa bertemu mereka, dan dengan demikian mengubah nilai mereka. Jika Anda melihat qubit dalam superposisi untuk menentukan nilainya, qubit akan menganggap nilai 0 atau 1.
Kuantum komputer paling maju belum terbebas dari memanipulasi lebih dari 16 qubit, yang berarti bahwa mereka jauh dari aplikasi praktis. Namun, potensi tetap bahwa komputer kuantum suatu hari bisa melakukan, cepat dan mudah, perhitungan yang sangat memakan waktu pada komputer konvensional.



Algoritma Quantum Computing

  • Algoritma Shor adalah contoh lanjutan paradigma dasar (berapa banyak waktu komputasi diperlukan untuk menemukan faktor bilangan bulat n-bit?), tapi algoritma ini tampak terisolir dari kebanyakan temuan lain ilmu informasi quantum. Sekilas, itu cuma seperti trik pemrograman cerdik dengan signifikansi fundamental yang kecil. Penampilan tersebut menipu; para periset telah menunjukkan bahwa algoritma Shor bisa ditafsirkan sebagai contoh prosedur untuk menetapkan level energi sistem quantum, sebuah proses yang fundamental. Seiring waktu berjalan dan kita mengisi lebih banyak pada peta, semestinya kian mudah memahami prinsip-prinsip yang mendasari algortima Shor dan algoritma quantum lainnya dan, kita harap, mengembangkan algoritma baru.
  • Algoritma Grover adalah sebuah algoritma kuantum untuk mencari database disortir dengan entri N di O ( N1 / 2 ) waktu dan menggunakan O ( log N ) ruang penyimpanan (lihat notasi O besar ) . Lov Grover dirumuskan itu pada tahun 1996 . Dalam model komputasi klasik , mencari database unsorted tidak dapat dilakukan dalam waktu kurang dari waktu linier (jadi hanya mencari melalui setiap item optimal ) . Algoritma Grover menggambarkan bahwa dalam model kuantum pencarian dapat dilakukan lebih cepat dari ini ; sebenarnya waktu kompleksitas O ( N1 / 2 ) adalah asimtotik tercepat mungkin untuk mencari database unsorted dalam model kuantum linear . Ini menyediakan percepatan kuadrat , seperti algoritma kuantum lainnya , yang dapat memberikan percepatan eksponensial atas rekan-rekan mereka klasik . Namun, bahkan percepatan kuadrat cukup besar ketika N besar . Seperti banyak algoritma kuantum , algoritma Grover adalah probabilistik dalam arti bahwa ia memberikan jawaban yang benar dengan probabilitas tinggi . Kemungkinan kegagalan dapat dikurangi dengan mengulangi algoritma.





 sumber : 



Selasa, 18 Maret 2014

Konsep RPC




Konsep RPC (Remote Procedure Call) pada Komunikasi Sistem Terdistribusi


Defnisi RPC


Remote Procedure Call adalah sebuah metoda yang memungkinkan kita untuk mengakses sebuah prosedur yang berada di komputer lain. Untuk dapat melakukan ini sebuah computer (server) harus menyediakan layanan remote prosedur. Pendekatan yang dilakukan adalah, sebuah server membuka socket, menunggu client yang meminta prosedur yang disediakan oleh server. RPC masih menggunakan cara primitive dalam pemrograman, yaitu menggunakan paradigma procedural programming. Hal itu membuat kita sulit ketika menyediakan banyak remote prosedur.

Umumnya protokol RPC yang digunakan pada saat ini adalah DCOM (Distributed Component Object Model). Saat ini ada alternatif protokol baru, yakni SOAP (Simple Object Access Protocol), yang berdasarkan pada teknologi XML.


Cara Kerja RPC


Tiap prosedur yang dipanggil dalam RPC, maka proses ini harus berkoneksi dengan server remote dengan mengirimkan semua parameter yang dibutuhkan, menunggu balasan dari server dan melakukan proses kemudian selesai. Proses di atas disebut juga dengan stub pada sisi klien. Sedangkan Stub pada sisi server adalah proses menunggu tiap message yang berisi permintaan mengenai prosedur tertentu.




Penjelasan dari diagram diatas :
  1. Klien memanggil prosedur stub lokal. Prosedur Stub akan memberikan parameter dalam suatu paket yang akan dikirim ke jaringan. Proses ini disebut sebagai marshalling.
  2. Fungsi Network pada O/S (Operating system – Sistem Operasi) akan dipanggil oleh stub untuk mengirim suatu message.
  3. Kemudian Kernel ini akan mengirim message ke sistem remote. Kondisi ini dapat berupa connectionless atau connection-oriented.
  4. Stub pada sisi server akan melakukan proses unmarshals pada paket yang dikirim pada network.
  5. Stub pada server kemudian mengeksekusi prosedur panggilan lokal.
  6. Jika eksekusi prosedur ini telah selesai, maka eksekusi diberikan kembali ke stub pada server.
  7. Stub server akan melakukan proses marshals lagi dan mengirimkan message nilai balikan ( hasilnya ) kembali ke jaringan.
  8. Message ini akan dikirim kembali ke klien.
  9. Stub klien akan membaca message ini dengan menggunakan fungsi pada jaringan.
  10. Proses unmarshalled kemudian dilakukan pada message ini dan nilai balikan akan diambil untuk kemudian diproses pada proses lokal.

Proses diatas akan dilakukan berulang-ulang ( rekursif ) dalam pengeksekusian RPC dalam suatu remote sistem. Contoh aplikasi untuk meremote pada teknik RPC (Remote Procedure Call) adalah menggunakan putty untuk melakukan SSH.



Kelebihan RPC :


  • Relatif mudah digunakan : Pemanggilan remote procedure tidak jauh berbeda dibandingkan pemanggilan local procedure. Sehingga pemrogram dapat berkonsentrasi pada software logic, tidak perlu memikirkan low level details seperti socket, marshalling &unmarshalling.
  • Robust (Sempurna): Sejak th 1980-an RPC telah banyak digunakan dlm pengembangan mission-critical application yg memerlukanscalability, fault tolerance, & reliability.



Kekurangan RPC :


  • Tidak fleksibel terhadap perubahan :
  1. Static relationship between client & server at run-time.
  2. Berdasarkan prosedural/structured programming yang sudah ketinggalan jaman dibandingkan OOP.
  • Kurangnya location transparency :
  1. Misalnya premrogram hanya boleh melakukan pass by value, bukan pass by reference.
  2. Komunikasi hanya antara 1 klien & 1 server (one-to-one at a time).
  3. Komunikasi antara 1 klien & beberapa server memerlukan beberapa koneksi yg terpisah.



Link Terkait :




Sumber :

Selasa, 11 Maret 2014

Sistem Terdistribusi

Permasalahan dari Sistem terdistribusi yaitu:


1. Kompleksitas
Sistem terdistribusi bersifat lebih kompleks daripada system sentral.

2. Keamanan
Sistem terdistribusi dapat diakses dari beberapa komputer dan jalur jaringan   mudah disadap, sehingga keamanan jaringan system terdistribusi menjadi masalah yang besar.

3. Kemampuan untuk dikendalikan
Komputer yang terdapat di system terdistribusi bisa terdiri dari berbagai tipe yang berbeda dan mungkin dijalankan pada sistem operasi yang berbeda pula. Kesalahan pada satu mesin bisa berakibat pada yang lainnya. Sehingga harus banyak usaha untuk mengendalikannya.

4. Tidak dapat diramalkan
System terdistribusi tidak dapat diramalkan tanggapannya. Tanggapannya tergantung beban total system, pengorganisasian, dan beban jaringannya.

5. Kesulitan dalam membangun perangkat lunak
Kesulitan yang akan dihadapi antaralain:bahasa pemrogramman yang harus dipakai, sistem operasi dll.

6. Masalah Jaringan 
Karena sistem terdistribusi di implementasikan dalam jaringan kom-puter, maka isu2 yang berkaitan dengan jaringan komputer akan men- jadi pertimbangan utama dalam merancang dan mengimplementasikan sistem.
 



Adapun masalah lain dengan sistem terdistribusi yang dapat dimunculkan antara lain berkaitan dengan :

  • Software – bagaimana merancang dan mengatur software dalam Distribusi Sistem
  • Ketergantungan pada infrastruktur jaringan
  • Kemudahan akses ke data yang di share, memunculkan masalah keamanan




Contoh Sistem Terdistribusi :
  • Internet.
  • Mobile Computing.
  • Sistem Otomasi Bank.
  • Deteksi Roaming Pada Telepon Seluler.
  • GPS (Global Positioning System).
  • Retail Point-of-Sale Terminals.

Minggu, 09 Maret 2014

Pengantar Komputasi Modern


Teori Komputasi
Komputasi adalah cara untuk menemukan pemecahan masalah dari data input dengan menggunakan suatu algoritma. Teori komputasi merupakan suatu sub bidang dari ilmu komputer dan matematika. Dan biasanya komputasi dilakukan dengan menggunakan komputer.

Komputasi modern diciptakan berfungsi untuk memberikan kemudahan menghitung dalam keakuratan, keefesienan waktu, model, kompleksitas, dan volume data yang besar. Sebelum adanya komputasi modern, komputasi telah ada tapi dengan media yang berbeda (seperti : sempoa, menghitung menggunakan batu, dll). Seiring berkembangnya teknologi, komputasi yang dahulu masih menggunakan teknik manual di gabungkan menjadi 1 kesatuan dalam sebuah media yaitu yang kita kenal dengan sebutan "komputer". Sehingga zaman modern ini segala sesuatu yang berkaitan dengan hitungan dapat dihitung menggunakan media komputer tersebut.


Komputasi Dalam Berbagai Bidang
Dan sekarang komputasi juga diterapkan dalam berbagai bidang, antara lain :

1. Matematika
Terdapat numerical analysis yaitu sebuah algoritma dipakai untuk menganalisa masalah - masalah matematika.

2. Bidang Fisika 
Terdapat Computational Physics yang mempelajari algoritma numerik untuk memecah kan teori kuantitatif fisika yang ada.

3. Bidang Kimia
 
Terdapat Computational Chemistry yaitu penggunaan ilmu komputer untuk  membantu menyelesaikan masalah kimia, contohnya penggunaan super komputer untuk menghitung struktur dan sifat molekul.

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

5. Bidang Geologi 
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.

6. Bidang Geografi 
Terdapat penggunaan komputasi yang diterapkan pada GIS (Geographic Information System) yang berguna untuk menyimpan, memanipulasi dan menganalisa informasi geografi.

7. Bidang BIologi
Terdapat Bioinformatics merupakan aplikasi dari teknologi informasi dan   ilmu komputer dalam penelitian bidang biologi molekuler.

8. Bidang Sosiologi
Terdapat Computational Sosiology yaitu penggunaan metode komputasi dalam menganalisa fenomena sosial.







Sumber :