Jumat, 12 Juni 2015

Komputasi Paralel, Komputasi Terdistribusi, dan Cuda pada GPU

KONSEP KOMPUTASI PARALEL

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

Terdapat dua hukum yang berlaku dalam sebuah parallel processing. yaitu:


  • Hukum Amdahl
  • Amdahl berpendapat, “Peningkatan kecepatan secara paralel akan menjadi linear, melipatgandakan kemampuan proses sebuah komputer dan mengurangi separuh dari waktu proses yang diperlukan untuk menyelesaikan sebuah masalah.”

  • Hukum Gustafson
  • Pendapat yang dikemukakan Gustafson hampir sama dengan Amdahl, tetapi dalam pemikiran Gustafson, 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
ARSITEKTUR PARALEL


  • SISD
Yang merupakan singkatan dari 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. Beberapa contoh komputer yang menggunakan model SISD adalah UNIVAC1, IBM 360, CDC 7600, Cray 1 dan PDP 1.

  • SIMD

Yang merupakan singkatan dari Single Instruction, Multiple Data. SIMD 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).contoh komputer yang menggunakan model SISD adalah UNIVAC1, IBM 360, CDC 7600, Cray 1 dan PDP 1.

  • MISD

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

  • MIMD

Yang merupakan singkatan dari Multiple Instruction, Multiple Data. MIMD 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.
Singkatnya untuk perbedaan antara komputasi tunggal dengan komputasi paralel, bisa digambarkan pada gambar di bawah ini:

PEMROSESAN TERDISTRIBUSI

Pemrosesan paralel adalah pendekatan komputasi untuk meningkatkan tingkat di mana satu set data diolah dengan pengolahan bagian yang berbeda dari data pada waktu yang sama secara simultan atau bersamaan pada sebuah komputer dan berfungsi memecah beban besar menjadi beberapa beban kecil untuk mempercepat proses penyelesaian masalah.

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.

Tipe lain dari komputasi paralel yang kadang-kadang disebut "didistribusikan" adalah gagasan dari sebuah komputer paralel cluster. Sebuah cluster akan banyak CPU terhubung melalui kecepatan tinggi koneksi ethernet ke hub sentral (Server) yang memberi masing-masing beberapa pekerjaan yang harus dilakukan. Metode cluster mirip dengan metode yang dijelaskan dalam paragraf di atas, kecuali bahwa semua CPU secara langsung terhubung ke server, dan satu-satunya tujuan mereka adalah untuk melakukan perhitungan yang diberikan kepada mereka.

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

THREAD PROGRAMMING


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

Sebagian besar komputer hanya dapat mengeksekusi satu instruksi program pada satu waktu, tetapi karena mereka beroperasi begitu cepat, mereka muncul untuk menjalankan berbagai program dan melayani banyak pengguna secara bersamaan. Sistem operasi komputer memberikan setiap program "giliran" pada prosesnya, maka itu memerlukan untuk menunggu sementara program lain mendapat giliran. Masing-masing program dipandang oleh sistem operasi sebagai suatu tugas dimana sumber daya tertentu diidentifikasi dan terus berlangsung. Sistem operasi mengelola setiap program aplikasi dalam sistem PC (spreadsheet, pengolah kata, browser Web) sebagai tugas terpisah dan memungkinkan melihat dan mengontrol item pada daftar tugas. Jika program memulai permintaan I / O, seperti membaca file atau menulis ke printer, itu menciptakan thread. Data disimpan sebagai bagian dari thread yang memungkinkan program yang akan masuk kembali di tempat yang tepat pada saat operasi I / O selesai. Sementara itu, penggunaan bersamaan dari program diselenggarakan pada thread lainnya. Sebagian besar sistem operasi saat ini menyediakan dukungan untuk kedua multitasking dan multithreading. Mereka juga memungkinkan multithreading dalam proses program agar sistem tersebut disimpan dan  menciptakan proses baru untuk setiap thread.

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.
Mekanisme ini terhitung lambat, karenanya disebut dengan static. Selain itu teknik ini tidak mudah diterapkan dan rentan kesalahan. Alasannya, pembagian pekerjaan yang dinamis di antara thread-thread menyebabkan load balancing-nya cukup rumit. Untuk memudahkannya programmer harus menggunakan protocol komunikasi yang kompleks untuk menerapkan scheduler load balancing. Kondisi ini mendorong pemunculan concurrency platforms yang menyediakan layer untuk mengkoordinasi, menjadwalkan, dan mengelola sumberdaya komputasi paralel.

Sebagian platform dibangun sebagai runtime libraries atau sebuah bahasa pemrograman paralel lengkap dengan compiler dan pendukung runtime-nya.

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. Nested parallelism memungkinkan sebuah subroutine di-spawned (ditelurkan dalam jumlah banyak seperti telur katak) sehingga program utama tetap berjalan sementara subroutine menghitung hasilnya. Sedangkan parallel loops seperti halnya fungsi for namun memungkinkan iterasi loop dilakukan secara bersamaan.

PEMROGRAMAN CUDA PADA GPU

CUDA (Compute Unified Device Architecture) adalah sebuah platform komputasi paralel dan model pemrograman yang diciptakan oleh NVIDIA dan dilaksanakan oleh unit pengolahan grafis ( GPU ) yang mereka hasilkan . CUDA memberikan pengembang program akses langsung ke set instruksi virtual dan memori elemen komputasi paralel dalam CUDA GPU .

Menggunakan CUDA , GPU dapat digunakan untuk pengolahan tujuan umum (yaitu , tidak eksklusif grafis ) , pendekatan ini dikenal sebagai GPGPU . Tidak seperti CPU , bagaimanapun, GPU memiliki arsitektur throughput yang paralel yang menekankan mengeksekusi banyak benang bersamaan perlahan, daripada mengeksekusi satu thread yang sangat cepat .


Platform CUDA dapat diakses oleh pengembang perangkat lunak melalui perpustakaan CUDA -accelerated , perintah kompiler (seperti OpenACC ) , dan ekstensi untuk bahasa pemrograman standar industri , termasuk C , C + + dan Fortran . C / C + + programmer menggunakan ' CUDA C / C + + ' , yang disusun dengan " nvcc " , NVIDIA LLVM berbasis C / C + + compiler , dan Fortran programmer dapat menggunakan ' CUDA Fortran ' , yang disusun dengan PGI CUDA Fortran compiler dari The Portland group. untuk baca lebih lanjut, silahkan baca selengkapnya disini Nvidia Geforce.


Source :
http://satriyoadhie.blogspot.com/2014/06/komputasi-paralel-arsitektur-simd-sisd.html
https://andri102.wordpress.com/game/soft-skill/konsep-komputasi-parallel-processing/
http://djuneardy.blogspot.com/2015/05/konsep-arsitektur-paralel-pemrosesan.html
http://techgrid1.blogspot.com/2013/10/cuda-dalam-gpu.html

Senin, 20 April 2015

Membuat Web Sederhana

kali ini saya dihadapkan dengan tugas membuat Web..
ya walaupun diminta web sesederhana mungkin tapi kalau masih awam (banget) gimana lagi?
kali ini saya akan menjelaskan tentang pembuatan web dengan menggunakan Template yang sudah di sediakan oleh website lain alias kita hanya tinggal meng-editnya saja :)

pertama-tama masuk ke website http://www.wix.com.


lalu anda akan dihadapkan dengan jendela login. buatlah account baru dengan mencantumkan email beserta password anda.

lalu jika sudah terdaftar maka akan muncul jendela dimana kita disuruh memilih salah satu kategori website yang ingin kita buat..
untuk kali ini saya memilih kategori Comunnity and Education.


setelah memilih kategorina maka di sebelah kanan akan bermunculan contoh-contoh tampilan yang ada.. pilih tampilan yang anda suka lali klik "edit" pas di bawah gambar tampilan..

setelah itu akan ada jendela baru yang dikhususkan untuk mengedit template tersebut.
anda dapat memasukan gambar baru, mengubah tampilan yang ada, mengubar background sesuka anda..

setelah selesai klik "save" di sebelah pojok kanan atas.. jika sudah, klik Publish.. sebelumnya anda akan diminta untuk mengisi nama website anda..
contoh: jika anda mengisi nama websitenya : "belajar" maka link website anda adalah
http://www.(username email anda).wix.com/(nama website)

ini link website saya yang telah saya buat:
http://www.diastewe.wix.com/diastowo

bagaimana? mudah kan? semoga dapat membantu anda :)
kritik dan saran kalian amat sangat saya butuhkan :) terima kasih..

Oleh:
Nama : Diastowo Faryduana
NPM : 52411050

Nama : Nandityo Adi Nugroho
NPM : 55411101

Nama : Tito Surya Gumelar
NPM : 57411130

Web Science, Sejarah Web, Arsitektur Web

Web Science
     Web Science adalah ilmu pengetahuan untuk membuat dan memanipulasi web, Web adalah kumpulan halaman yang dapat menampilkan informasi berupa gambar, animasi, tulisan, suara maupun gabungan dari keseluruhannya yang bersifat statis atau dinamis yang dapat membentuk rangkaian yang saling terkait yang dihubungkan dengan banyak link. Science adalah ilmu pengetahuan yang didapat dan bisa menjadi pengetahuan bagi masyarakat untuk memberi informasi yang akurat.

Sejarah Web Science
     Web Science didirikan pada tahun 2006 dengan nama Web Science Research Initiative (WSRI). Web Sicence ini awalnya adalah hasil dari Memorandum of Understanding antara MIT CSAIL dan University of Southampton, ECS. Ambisinya adalah mengkoordinasi dan mendukung sentralisasi pembelajaran World Wide Web. Sejak pertama kali diluncurkan, konsep Web Science sudah menyebar secara meluas dan mengukuhkan diri sebagai area aktifitas yang penting.
     Aktifitas WSRI fokus pada (i) artikulasi agenda penelitian untuk komunitas scientific, (ii) mengkoordinasi pengembangan materi pembelajaran Web Science dan (iii) mengikat pemikiran tentang kepeminpinan pada sektor yang berkembang ini.
     Untuk melanjutkan aktifitasnya dan mendukung pengembangan Web Science secara global, para direktur WSRI membuat badan amal-the Web Science Trust (WST). WST berkerja sama dengan World Wide Web. Golnya adalah untuk mendorong partisipan luas dalam pengembangan Web Science. the Foundation mempunyai misi untuk meningkatkan Web. the Trust dan the Foundation mempunyai kesamaan komitmen untuk melanjutkan disiplin dari Web Science dan akan bekerja bersama pada beberapa proyek yang memperbaiki pengertian tentag Web Science dan mempromosikan dampak positif Web Science pada masyarakat luas.

Sejarah Web
     WWW atau World Wide Web. Sebuah kata yang sangat tindak asing di telinga kita. Terutama anda yang sering mondar -mandir di dunia maya. Jika ingin masuk ke suatu website pasti anda mengetik awalan tersebut. Misalnya anda ingin membuka akun facebook anda, di kotak alamat anda pasti mengetikkan www.facebook.com. tahukah anda sejak kapan penulisan www mulai dipakai di jagat web?.
     Sejarah Web bermula di European Laboratory for Particle Physics (lebih dikenal dengan nama CERN), di kota Geneva dekat perbatasan Perancis dan Swiss. CERN merupakan suatu organisasi yang didirikan oleh 18 negara di Eropa. Dibulan Maret 1989, Tim Berners dan peneliti lainnya dari CERN mengusulkan suatu protokol sistem distribusi informasi di Internet yang memungkinkan para anggotanya yang tersebar di seluruh dunia saling membagi informasi dan bahkan untuk menampilkan informasi tersebut dalam bentuk grafik.
     Web Browser pertama dibuat dengan berbasiskan pada teks. Untuk menyatakan suatu link, dibuat sebarisan nomor yang mirip dengan suatu menu. Pemakai mengetikkan suatu nomor untuk melakukan navigasi di dalam Web. Kebanyakan software tersebut dibuat untuk komputer-komputer yang menggunakan Sistem Operasi UNIX, dan belum banyak yang bisa dilakukan oleh pemakai komputer saat itu yang telah menggunakan Windows. Tetapi semua ini berubah setelah munculnya browser Mosaic dari NCSA (National Center for Supercomputing Applications).
     Di bulan Mei 1993, Marc Andreesen dan beberapa murid dari NCSA membuat Web browser untuk sistem X-Windows yang berbasiskan grafik dan yang mudah untuk digunakan. Dalam beberapa bulan saja, Mosaic telah menarik perhatian baik dari pemakai lama maupun pemakai baru di Internet. Kemudian NCSA mengembangkan versi-versi Mosaic lainnya untuk komputer berbasis UNIX, NeXT, Windows dan Macintosh.
     Di bulan Mei 1993, Marc Andreesen dan beberapa murid dari NCSA membuat Web browser untuk sistem X-Windows yang berbasiskan grafik dan yang mudah untuk digunakan. Dalam beberapa bulan saja, Mosaic telah menarik perhatian baik dari pemakai lama maupun pemakai baru di Internet. Kemudian NCSA mengembangkan versi-versi Mosaic lainnya untuk komputer berbasis UNIX, NeXT, Windows dan Macintosh.
Pada tahun 1994, Marc Andreesen meninggalkan NCSA, dan kemudian bersama Jim Clark, salah satu pendiri dari Silicon Graphics, membuat Netscape versi pertama. Kehadiran Netscape ini menggantikan kepopuleran Mosaic sebagai Web browser dan bahkan sampai saat ini Netscape merupakan browser yang banyak digunakan setelah Internet Explorer dari Microsoft.
     Pada tahun yang sama CERN dan MIT mendirikan suatu konsorsium yang dinamakan World WIde Web Consortium (W3C) yang bertugas untuk membangun standar bagi teknologi Web.
     Pada awal perkembangannya, sewaktu browser masih berbasiskan teks hanya terdapat sekitar 50 website. Di akhir tahun 1995 jumlah ini telah berkembang mencapai sekitar 300.000 web site. Dan diperkirakan sekarang ini jumalh pemakai Web telah mencapat sekitar 30-an juta pemakai diseluruh dunia.

Arsitektur Web:

Definisi

     Arsitektur Website adalah suatu pendekatan terhadap desain dan perencanaan situs yang, seperti arsitektur itu sendiri, melibatkan teknis, kriteria estetis dan fungsional. Seperti dalam arsitektur tradisional, fokusnya adalah benar pada pengguna dan kebutuhan pengguna. Hal ini memerlukan perhatian khusus pada konten web, rencana bisnis, kegunaan, desain interaksi, informasi dan desain arsitektur web. Untuk optimasi mesin pencari yang efektif perlu memiliki apresiasi tentang bagaimana sebuah situs Web terkait dengan World Wide Web.
     Sejak web perencanaan isi, desain dan manajemen datang dalam lingkup metode desain, Vitruvian tradisional tujuan komoditas, keteguhan dan kesenangan dapat memandu arsitektur situs, seperti yang mereka lakukan arsitektur fisik dan disiplin desain lainnya. Website arsitektur akan datang dalam ruang lingkup estetika dan teori kritis dan kecenderungan ini dapat mempercepat dengan munculnya web semantik dan web 2.0. Kedua ide menekankan aspek struktur informasi. Strukturalisme adalah sebuah pendekatan untuk pengetahuan yang telah dipengaruhi sejumlah disiplin akademis termasuk estetika, teori kritis dan postmodernisme. Web 2.0, karena melibatkan user-generated content, mengarahkan perhatian arsitek website untuk aspek-aspek struktur informasi.

     Suatu pendekatan terhadap desain dan perencanaan situs yang, seperti arsitektur itu sendiri, melibatkan teknis, kriteria estetika dan fungsional. Seperti dalam arsitektur tradisional, fokusnya adalah benar pada pengguna dan kebutuhan pengguna. Hal ini memerlukan perhatian khusus pada konten web, rencana bisnis, kegunaan, desain interaksi, informasi dan desain arsitektur web. Untuk optimasi mesin pencari yang efektif perlu memiliki apresiasi tentang bagaimana sebuah situs Web terkait dengan World Wide Web.

     “Website arsitektur” memiliki potensi untuk menjadi istilah yang digunakan untuk disiplin intelektual mengatur konten website. ”Web desain”, dengan cara kontras, menggambarkan tugas-tugas praktis, bagian-bagian-grafis dan teknis, dari merancang dan menerbitkan sebuah situs web. Perbedaan tersebut dibandingkan dengan yang antara tugas mengedit sebuah koran atau majalah dan desain grafis dan pencetakan. Tetapi hubungan antara editorial dan kegiatan produksi adalah lebih dekat untuk publikasi web daripada untuk penerbitan cetak. Tiga standar utama untuk penerapan web services. Standar-standar ini mendukung pertukaran data berbasis XML. Tiga standar tersebut meliputi SOAP, WSDL, dan UDDI. Berikut bakal tak jelaskan secara singkat mengenai standar tersebut. SOAP ( Simple Object Access Protocol )
     Protokol ini mendukung proses pengkodean data (biasanya XML) dan transfernya melalui HTTP (Hyper Text Transfer Language). Dalam konteks web services, SOAP adalah suatu bahasa versi bebas dari protokol RPC (Remote Procedure Caoll) yang berguna untuk proses transaksi melalui HTTP standar. SOAP membuat klien web service dapat memilih beberapa parameter mengenai permintaannya dan memberikannya kpd si penyedia. Ketika penyedia menganggapi permintaan tersebut, maka terjadilah web services.WSDL ( Web Services Description Language ) Merupakan bahasa berbasis XML yang menjelaskan fungsi-fungsi dalam web services. WSDL menyediakan cara untuk memanfaatkan kapabilitas web services. WSDL memberi tahu mesin lain bagaimana memformat/ menterjemahkan permintaan yang diterima berikut respon mereka agar proses web service bisa berjalan. Singkatnya, WSDL adalah bahasa yang memungkinkan berbagai dokumen yang dibuat dalam aplikasi yang berbeda dapat berkomunikasi.
     UDDI (Universal Description Discovery and Integration ) Adalah semacam direktori global untuk mengelola web services. Fungsinya mirip dengan Yellow Pages untuk versi web services. UDDI berisi informasi tentang penawaran atau layanan apa yang ditawarkan perusahaan berikut dengan detil teknis bagaimana cara mengaksesnya. Inforamsi tersebut ditulis dalam bentuk file-file WSDL.
     Hal lain yang harus Anda ingat adalah setiap halaman website hendaknya tidak lebih dari 2 (dua) level kedalaman atau 2 (dua) kali klik dari halaman depan (home). Bila tidak, spider tidak akan membuat indeks semua halaman website. Halaman depan (home page) website harus memiliki tautan ke halaman-halaman utama, baik melalui isi halaman depan maupun melalui menu website. Masing-masing halaman utama juga harus memiliki tautan ke subhalaman. Satu halaman utama bisa terhubung ke lebih dari satu subhalaman.
Sebaliknya setiap subhalaman juga harus memiliki tautan untuk kembali ke halaman utama dan setiap halaman utama harus memiliki tautan untuk kembali ke halaman depan. Spider atau web crawler hanya bisa mengikuti tautan dari satu halaman ke halaman yang lain dan dari satu website ke website yang lain. Oleh karena itu semakin banyak tautan dari website lain yang mengarah ke website Anda maka website Anda akan semakin dikenal oleh mesin pencari.
     Selanjutnya, setiap halaman baik itu halaman depan, halaman utama dan subhalaman harus menggunakan kata kunci yang telah Anda pilih. Halaman depan dan halaman-halaman utama harus menggunakan kata-kata kunci yang paling banyak dicari.

     Struktur 3 (tiga) lapisan ini menghasilkan sebuah website yang mudah ditelusuri bagi pengunjung dan spider. Selain mengikuti tautan-tautan untuk menemukan website, Anda juga bisa memberikan alamat website Anda kepada spider. Misalnya melalui Googlebot, spidernya Google. Cukup ketikkan alamat website Anda, kemudian spider atau web crawler akan menelusuri semua halaman website dan membuat indeksnya. Sekarang, mari kita bahas halaman-halaman yang ada pada sebuah website.


1. Halaman Depan (Home Page)
Setiap website memiliki halaman depan. Pada umumnya, halaman depan merupakan halaman pertama yang dilihat oleh pengunjung dan juga merupakan halaman yang paling penting dalam mendapatkan urutan pencarian yang tinggi dari mesin pencari, karena mesin pencari memberikan lebih banyak bobot kepada halaman depan darimana halaman lainnya. Halaman depan harus memberikan informasi yang jelas dan singkat kepada pengunjung mengenai apa website Anda, produk dan/atau jasa apa yang tersedia. Halaman depan harus memiliki tautan ke semua halaman website dan setiap halaman harus memiliki tautan untuk kembali ke halaman depan.


2. Halaman Produk/Jasa
Bagian utama dari website berisi penawaran produk dan/atau jasa. Apapun kategori website Anda, yang penting Anda harus menggambarkan secara singkat dan tepat apa yang Anda tawarkan, bantu pengunjung untuk menentukan pilihan dan melakukan transaksi dengan cara yang semudah mungkin. Jumlah halaman produk/jasa hendaknya disesuaikan dengan jumlah produk/jasa yang ditawarkan. Apabila jumlah produk/jasa yang ditawarkan banyak, maka halaman utama produk/jasa bisa berisi ringkasan dari keseluruhan produk/jasa kemudian Anda buat lagi beberapa subhalaman yang berisi detil dari masing-masing produk/jasa.


3. Halaman Informasi
o Profil: berisi sejarah mengenai bisnis atau perusahaan, visi dan misi, siapa saja pengurus inti website atau perusahaan, dan hal-hal penting lainnya mengenai bisnis atau perusahaan.
o FAQ (Frequently Asked Question): berisi pertanyaan-pertayaan umum mengenai produk, jasa, maupun perusahaan.
o Testimoni: berisi kesaksian pelanggan mengenai penggunaan produk dan/atau jasa yang ditawarkan. Halaman ini digunakan untuk membangun reputasi.
o Surat kabar elektronik: berisi berita-berita mengenai produk dan/atau jasa baru, tips-tips, promo-promo yang diadakan, serta pengumuman-pengumuman lain yang mau disampaikan kepada pelanggan.

4. Halaman Keanggotaan

Halaman keanggotaan merupakan bagian yang penting sekali untuk pengembangan website di masa mendatang. Dengan mengetahui siapa saja pengunjung dan perkembangan jumlah pengunjung aktif Anda bisa menganalisa hal-hal yang perlu diperbaiki, memenuhi kebutuhan-kebutuhan pengunjung dengan lebih tepat, sehingga pada akhirnya website Anda bisa terus berkembang. Ada beberapa hal yang sangat penting apabila Anda hendak meminta data pribadi pengunjung website yaitu Anda harus bisa menjaga kerahasiaan data tersebut dan privasi pengunjung, mereka juga harus bisa menghentikan keanggotaannya kapan saja.


5. Halaman Kontak
Halaman kontak berisi cara-cara untuk menghubungi pengurus website, bisa melalui email, telepon, fax, chatting, surat, ataupun dengan cara mengisi formulir pertanyaan atau komentar secara online. Hal ini akan memberikan rasa nyaman kepada pengunjung karena mereka bisa berhubungan dengan pemilik website, mengetahui alamat kantornya, berbicara dengan pengurus website baik untuk bertanya atau untuk menyampaikan keluhan.
  


Bagian dari Arsitektur Website :



Hypertext Transfer Protocol (HTTP)
     HTTP adalah sebuah protokol jaringan lapisan aplikasi yang digunakan untuk sistem informasi terdistribusi, kolaboratif, dan menggunakan hipermedia. Penggunaannya banyak pada pengambilan sumber daya yang saling terhubung dengan tautan, yang disebut dengan dokumen hiperteks, yang kemudian membentuk World Wide Web pada tahun 1990 oleh fisikawan Inggris, Tim Berners-Lee. Hingga kini, ada dua versi mayor dari protokol HTTP, yakni HTTP/1.0 yang menggunakan koneksi terpisah untuk setiap dokumen, dan HTTP/1.1 yang dapat menggunakan koneksi yang sama untuk melakukan transaksi. Dengan demikian, HTTP/1.1 bisa lebih cepat karena memang tidak usah membuang waktu untuk pembuatan koneksi berulang-ulang.Pengembangan standar HTTP telah dilaksanakan oleh Konsorsium World Wide Web (World Wide Web Consortium/W3C) dan juga Internet Engineering Task Force (IETF), yang berujung pada publikasi beberapa dokumen Request for Comments (RFC), dan yang paling banyak dirujuk adalah RFC 2616 (yang dipublikasikan pada bulan Juni 1999), yang mendefinisikan HTTP/1.1.


WWW (World Wide Web)

     WWW (World Wide Web) merupakan kumpulan web server dari seluruh dunia yang berfungsi menyediakan data dan informasi untuk dapat digunakan bersama.WWW atau biasa disebut web adalah bagian yang paling menarik dari Internet. Melalui web, dapat mengakses informasi-informasi yang tidak hanya berupa teks tetapi bisa juga berupa gambar, suara, video dan animasi. Fasilitas ini tergolong masih baru dibandingkan surel (email), sebenarnya WWW merupakan kumpulan dokumen-dokumen yang sangat banyak yang berada pada komputer server (web server), di mana server-server ini tersebar di lima benua termasuk Indonesia, dan terhubung menjadi satu melalui jaringan Internet. Dokumen-dokumen informasi ini disimpan atau dibuat dengan format HTML (Hypertext Markup Language). Suatu halaman dokumen informasi dapat terdiri atas teks yang saling terkait dengan teks lainnya atau bahkan dengan dokumen lain. Keterkaitan halaman lewat teks ini disebut hypertext. Dokumen infomasi ini tidak hanya terdiri dari teks tetapi dapat juga berupa gambar, mengandung suara bahkan klip video. Kaitan antar-dokumen yang seperti itu biasa disebut hypermedia. Jadi dapat disimpulkan bahwa WWW adalah sekelompok dokumen multimedia yang saling terkoneksi menggunakan hyperteks link. Dengan mengklik hyperlink, maka bisa berpindah dari satu dokumen ke dokumen lainnya.

URL( universal resource locator) 

     URL( universal resource locator) merupakan suatu konsep penamaan lokasi standar dari suatu file,direktori,computer, dan lokasi komputernya sesuai dengan metode yang digunakan. URL tidak hanya dapat menunjuk ke suatu file tapi dapat juga menunjuk suatu query, dokumen dalam suatu database atau hasil dari perintah finger atau perintah archie . secara umum dapat digambarkan penulisan url : metode://nama_file[:nomor_port]. Jenis metode yang digunakan pada url adalah file,http,news,gopher,telnet.


XML (Extensible Markup Language) 

     XML (Extensible Markup Language) merupakan bahasa web turunan dari SGML (Standart Generalized Markup Language) yang ada sebelumnya. XML hampir sama dengan HTML, dimana keduanya sama-sama turunan dari SGML. Teknologi XML dikembangkan mulai tahun 1966 dan mendapatkan pengakuan dari Worl Wide Web Consortium (W3C) pada bulan Februari 1998. Sedangkan SGML sendiri telah dikembangkan pada awal tahun 1980-an. Pada saat HTML dikembangkan pada tahun 1990, para penggagas XML mengadopsi bagian paling penting SGML dan dengan berpedoman pada pengembangan HTML menghasilkan bahasa markup yang tidak kalah hebatnya dengan SGML.XML tidak mempunyai definisi secara tepat karena ada yang berpendapat bahwa XML bukanlah suatu bahasa pemrograman,melainkan XML merupakan sintaks yang digunakan untuk menjelaskan bahasa markup lain (Dournaee,2002), sehingga dinamakan meta-language. Meskipun demikian pendapat yang XML bukan merupakan bahasa markup, didasarkan bahwa XML merupakan bahasa markup terpisah untuk tujuan terpisah. Selain itu XML bukanlah solusi semua hal untuk tujuan semua user.

JavaScript

     JavaScript adalah bahasa pemrograman berbasis prototipe yang berjalan disisi klien. jika kita berbicara dalam konteks web, sederhananya, kita dapat memahami JavaScript sebagai bahasa pemrograman yang berjalan di browser. Javascript dipanggil untuk memberikan fungsi pada halaman web dengan meletakannya secara internal pada halaman html diantara tag atau dibuat pada file terpisah ( eksternal ) dan lalu di link menggunakan pada bagian , seperti CSS. Fungsi Javascript adalah Secara fungsional, Javascript digunakan untuk menyediakan akses script pada objek yang dibenamkan ( embedded ). Contoh sederhana dari penggunaan javascript adalah membuka halaman pop up, fungsi validasi pada form sebelum data dikirimkan ke server, merubah image kursor ketika melewati objek tertentu, dan lain lain.


AJAX

     AJAX disini adalah singkatan dari Asynchronous JavaScript and XML. Pada intinya ajax itu merupakan gabungan beberapa teknologi yang bertujuan untuk menghindari page reload. Dengan menghindari page reload, kita dapat menghindari paradigma click-and-wait serta memberikan sebuah fitur yang cukup kompleks pada website seperti validasi data secara realtime, drag n drop dan fitur-fitur lain yang belum dimiliki web biasa. Dengan AJAX, suatu aplikasi web dapat mengambil data kemudian diolah di client melalui request asynchronous HTTP yang diinisiasi oleh Javascript, sehingga dapat mengupdate bagian-bagian tertentu dari web tanpa harus memanggil keseluruhan halaman web. Request ini dapat dieksekusi dalam beberapa cara dan beberapa format transmisi data. Dikombinasikannya cara pengambilan data remote dengan interaktivitas dari Document Object Model (DOM) telah menghasilkan generasi terbaru dari aplikasi web yang mengebrak aturan-aturan tradisional tentang apa yang dapat terjadi di dalam web.

Sumber : 
http://laoderahmatputra.blogspot.com/2014/03/pengertian-sejarah-arsitektur-web.html
http://panjiapriyantooo.blogspot.com/2013/04/definisi-web-science-dan-sejarah-web_30.html

Minggu, 19 April 2015

Komputasi Kuantum

Apa itu Komputasi Kuantum?

     Komputasi kuantum adalah bidang studi difokuskan pada teknologi komputer berkembang berdasarkan prinsip-prinsip teori kuantum , yang menjelaskan sifat dan perilaku energi dan materi pada kuantum (atom dan subatom) tingkat. Pengembangan komputer kuantum , jika praktis, akan menandai lompatan maju dalam kemampuan komputasi jauh lebih besar daripada yang dari sempoa ke modern superkomputer , dengan keuntungan kinerja di alam miliar kali lipat dan seterusnya.
     Komputer kuantum, mengikuti hukum fisika kuantum, akan memperoleh kekuatan pengolahan yang besar melalui kemampuan untuk berada di beberapa negara, dan untuk melakukan tugas-tugas menggunakan semua kemungkinan permutasi secara bersamaa. Kini pusat penelitian di komputasi kuantum termasuk MIT, IBM, Oxford University, dan Los Alamos National Laboratory.

Entanglement
     Entanglement merupakan keadaan dimana dua atom yang berbeda berhubungan sedemikian hingga satu atom mewarisi sifat atom pasangannya. “Entanglement adalah esensi komputasi kuantum karena ini adalah jalinan kualitas yang berhubungan dengan lebih banyak informasi dalam bit kuantum dibanding dengan bit komputing klasik,” demikian Andrew Berkley, salah satu peneliti.
     Para ahli fisika dari University of Maryland telah satu langkah lebih dekat ke komputer kuantum dengan mendemonstrasikan eksistensi entanglement antara dua gurdi kuantum, masing-masing diciptakan dengan tipe sirkuit padat yang dikenal sebagai persimpangan Josephson. Temuan terbaru ini mendekatkan jalan menuju komputer kuantum dan mengindikasikan bahwa persimpangan Josephson pada akhirnya dapat digunakan untuk membangun komputer supercanggih.

Pengoperasian Data Qubit
     Proses komputasi dilakukan pada partikel ukuran nano yang memiliki sifat mekanika quantum, maka satuan unit informasi pada Komputer Quantum disebut quantum bit, atau qubit. Berbeda dengan bit biasa, nilai sebuah qubit bisa 0, 1, atau superposisi dari keduanya. State dimana qubit diukur adalah sebagai vektor atau bilangan kompleks. Sesuai tradisi dengan quantum states lain, digunakan notasi bra-ket untuk merepresentasikannya.
     Pure qubit state adalah superposisi liner dari kedua state tersebut. Lebih jelasnya, sebuah pure qubit state dapat direpresentasikan oleh kombinasi linear dari state|0> dan state |1> : Dengan α dan β adalah amplitudo probabilitas yan dapat berupa angka kompleks. State space dari sebuah qubit secara geometri dapat direpresentasikan Bloch sphere
     Bloch sphere adalah ruang 2 dimensi yang merupakan geometri untuk permukaan bola. Dibandingkan bit konvensional yang hanya dapat beradai di salah satu kutub, Qubit dapat berada dimana saja dalam permukaan bola. Untuk penerapan fisiknya, semua sistem 2 level, selama ukurannya cukup kecil untuk hukum mekanika quantum berlaku. Berbagai jenis implementasi fisik telah dikemukakan, contohnya antara lain: polarisasi cahaya, spin elektron, muatan listrik, dll.
     Superposisi quantum adalah inti perbedaan antara qubit dengan bit biasa. Dalam keadaan superposisi, sebuah qubit akan bernilai |0> dan |1> pada saat bersamaan. Menurut interpretasi Copenhagen, bila dilakukan pengukuran terhadap qubit, maka hanya akan muncul satu state saja. State lainnya “kolaps” dalam arti hancur dan tidak mungkin diambil kembali.
     Pemanfaatan sifat superposisi qubit ini adalah Paralellisme Quantum. Paralelisme Quantum muncul dari kemampuan quantum register untuk menyimpan superposisi dari base state. Maka setiap operasi pada register berjalan pada semua kemungkinan dari superposisi secara simultan. Karena jumlah state yang mungkin adalah 2n, dengn n adalah jumlah qubit pada quantum register, kita dapat melakukan pada komputer quantum satu kali operasi yang membutuh kan waktu eksponensial pada komputer konvensional. Kelemahan dari metode ini adalah, semakin besar base state yang bersuperposisi, semakin kecil kemungkinan hasil pengukuran dari nilai hasil pengukuran tersebut benar. Kelemahan ini membuat pararellisme quantum tidak berguna bila operasi dilakukan pada nilai yang spesifik. Namun kelemahan ini tidak begitu berpengaruh pada fungsi yang memperhitungkan nilai dari semua input, bukan hanya satu. Sebagaimana ditunjukkan pada Algoritma Shor.

Quantum Gate
     Dalam komputasi kuantum dan khusus kuantum sirkuit model komputasi, gerbang kuantum (atau Gerbang logika kuantum) adalah rangkaian dasar kuantum yang beroperasi di sejumlah kecil qubits. Mereka adalah blok bangunan dari kuantum sirkuit, seperti gerbang logik klasik sirkuit digital konvensional.
     Tidak seperti logika klasik pintu gerbang pada umumnya, logika kuantum bersifat reversibel. Namun, komputasi klasik hanya dapat dilakukan dengan menggunakan gerbang reversibel. Sebagai contoh, gerbang Toffoli reversibel dapat melaksanakan semua fungsi Boolean. Gerbang ini memiliki penyetaraan kuantum secara langsung, menampilkan bahwa sirkuit kuantum dapat melakukan semua operasi yang dilakukan oleh sirkuit klasik.
     Gerbang logik kuantum yang diwakili oleh kesatuan matriks. Gerbang kuantum yang paling umum beroperasi pada ruang dari satu atau dua qubits, seperti Gerbang logika klasik umum beroperasi pada satu atau dua bit. Ini berarti bahwa sebagai matriks, gerbang kuantum dapat dijelaskan oleh 2 × 2 atau 4 × 4 kesatuan matriks.

Algoritma Shor
     Algoritma Shor merupakan sebuah metode yang dikembangkan tahun 1994 oleh ilmuwan AT&T  Peter Shor untuk menggunakan komputer kuantum yang futuristis untuk menemukan faktor-faktor dari sebuah bilangan. Bilangan-bilangan yang diperkalikan satu dengan yang lain  untuk  memperoleh  bilangan  asli.  Saat ini, pemfaktoran (factoring) sebuah bilangan besar masih terlalu sulit bagi komputer konvensional meskipun begitu mudah untuk  diverifikasi. Itulah sebabnya pemfaktoran bilangan besar ini banyak digunakan dalam metode kriptografi untuk melindungi data.

Sumber : http://chachados.blogspot.com/2013/05/komputasi-kuantum.html

Minggu, 15 Maret 2015

Apa itu Cloud Computing...

Pengertian / Definisi Cloud Computing.
Cloud computing mungkin masih samar terdengar bagi orang awam. Tetapi keberadaan cloud computing di era digital kini sebenarnya telah terasa di tengah masyarakat dalam kehidupan sehari hari seperti penggunaan email dan juga media sosial.


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.

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.
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.
Berikut adalah penjelasan singkat tentang Cloud Computing, sistem yang telah mendunia yang dapat membantu perusahaan atau organisasi dalam efisiensi penyimpanan data. Beberapa faktor seperti ketersediaan internet yang dibutuhkan sebagai jalur utama dalam distribusi data, kualitas vendor akan layanan sistem Cloud maupun masalah keamanan dan privasi seperti serangan peretas/hacker dalam meretas internet patut menjadi pertimbangan tersendiri sebelum anda beralih ke sistem Cloud. Selain vendor yang harus meningkatkan kualitas pelayanan mereka, pengguna juga diharapkan dapat lebih bijak dalam memilih kualitas vendor yang akan mereka gunakan untuk mengelola data berbasis Cloud Computing.


Sumber Gambar: http://www.gadgetreview.com/wp-content/uploads/2015/03/cloud_computing.jpg


Sumber: Pengertian, Manfaat, Cara Kerja dan Contoh Cloud Computing
Lisensi: Non-Commercial
Follow us: @pusatteknologi on Twitter | pusatteknologi on Facebook