Parallel Computation

Kali ini saya akan menjelaskan mengenai Parallel Computing yang tentunya akan dikupas secara tuntas. Pernahkah kalian mendengar istilah tersebut? apa sih itu? apa sejarahnya? bagaimana cara kerjanya? dan lain-lainya. untuk itu mari kita bahas satu per satu.

#AnbiyaShafardhiawanRizqullah

#4IA19

#ParallelComputation

#Parallelism Concept

#DistributedComputing

#ArchitecturalParallelComputer

#PengantarThreadProgramming

Apa itu Computing?

Computing atau Komputasi sebetulnya bisa diartikan sebagai cara untuk menemukan pemecahan masalah dari data input dengan menggunakan suatu algoritma. Hal ini ialah apa yang disebut dengan teori komputasi, suatu sub-bidang dari ilmu komputer dan matematika. Selama ribuan tahun, perhitungan dan komputasi umumnya dilakukan dengan menggunakan pena dan kertas, atau kapur dan batu tulis, atau dikerjakan secara mental, kadang-kadang dengan bantuan suatu tabel. Namun sekarang, kebanyakan komputasi telah dilakukan dengan menggunakan komputer.
Secara umum iIlmu komputasi adalah bidang ilmu yang mempunyai perhatian pada penyusunan model matematika dan teknik penyelesaian numerik serta penggunaan komputer untuk menganalisis dan memecahkan masalah-masalah ilmu (sains). Dalam penggunaan praktis, biasanya berupa penerapan simulasi komputer atau berbagai bentuk komputasi lainnya untuk menyelesaikan masalah-masalah dalam berbagai bidang keilmuan, tetapi dalam perkembangannya digunakan juga untuk menemukan prinsip-prinsip baru yang mendasar dalam ilmu.
Bidang ini berbeda dengan ilmu komputer (computer science), yang mengkaji komputasi, komputer dan pemrosesan informasi. Bidang ini juga berbeda dengan teori dan percobaan sebagai bentuk tradisional dari ilmu dan kerja keilmuan. Dalam ilmu alam, pendekatan ilmu komputasi dapat memberikan berbagai pemahaman baru, melalui penerapan model-model matematika dalam program komputer berdasarkan landasan teori yang telah berkembang, untuk menyelesaikan masalah-masalah nyata dalam ilmu tersebut.

Kalo Pararel itu Sendiri Apa Sih?

Pemrosesan paralel (parallel processing) adalah penggunakan lebih dari satu CPU untuk menjalankan sebuah program secara simultan. Idealnya, parallel processing membuat program berjalan lebih cepat karena semakin banyak CPU yang digunakan. Tetapi dalam praktek, seringkali sulit membagi program sehingga dapat dieksekusi oleh CPU yang berbea-beda tanpa berkaitan di antaranya.

Jadi Pararrel Computing itu Apa?

Pararrel Computing atau 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 data dalam jumlah besar ataupun karena tuntutan proses komputasi yang banyak. Untuk melakukan aneka jenis komputasi paralel ini diperlukan infrastruktur mesin paralel yang terdiri dari 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.

Pemrograman paralel adalah teknik pemrograman komputer yang memungkinkan eksekusi perintah/operasi secara bersamaan baik dalam komputer dengan satu (prosesor tunggal) ataupun banyak (prosesor ganda dengan mesin paralel) CPU. Tujuan utama dari pemrograman paralel adalah untuk meningkatkan performa komputasi. Semakin banyak hal yang bisa dilakukan secara bersamaan (dalam waktu yang sama), semakin banyak pekerjaan yang bisa diselesaikan.
Komputasi paralel membutuhkan:
  • Algoritma
  • Bahasa Pemrograman, dan
  • Compiler
Sebagai besar komputer hanya mempunyai satu CPU, namun ada yang mempunyai lebih dari satu. Bahkan juga ada komputer dengan ribuan CPU. Komputer dengan satu CPU dapat melakukan parallel processing dengan menghubungkannya dengan komputer lain pada jaringan. Namun, parallel processing ini memerlukan software canggih yang disebut distributed processing software.

Apa Tujuannya?

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

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

Bedanya Komputasi Paralel dengan Multitasking Apa?

Multitasking itu sendiri adalah komputer dengan processor tunggal yang dapat mengeksekusi beberapa tugas secara bersamaan. Sedangkan komputasi paralel menggunakan beberapa processor atau komputer. Selain itu komputasi paralel tidak menggunakan arsitektur Von Neumann. Untuk lebih memperjelas lebih dalam mengenai perbedaan komputasi tunggal (menggunakan 1 processor) dengan komputasi paralel (menggunakan beberapa processor), maka kita harus mengetahui 4 model komputasi atau arsitektur komputer pararel yang digunakan, yaitu:
  • SISD
  • SIMD
  • MISD
  • MIMD

 

Apa Aja Aristektur Komputer Parallel?

  • Komputer SISD (Single Instruction stream-Single Data stream)

Pada komputer jenis ini semua instruksi dikerjakan terurut satu demi satu, tetapi juga dimungkinkan adanya overlapping dalam eksekusi setiap bagian instruksi (pipelining). Pada umumnya komputer SISD berupa komputer yang terdiri atas satu buah pemroses (single processor). Namun komputer SISD juga mungkin memiliki lebih dari satu unit fungsional (modul memori, unit pemroses, dan lain-lain), selama seluruh unit fungsional tersebut berada dalam kendali sebuah unit pengendali.

Oleh karena itu model ini 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.
  • Komputer SIMD (Single Instruction stream-Multiple Data stream)

Pada komputer SIMD terdapat lebih dari satu elemen pemrosesan yang dikendalikan oleh sebuah unit pengendali yang sama. Seluruh elemen pemrosesan menerima dan menjalankan instruksi yang sama yang dikirimkan unit pengendali, namun melakukan operasi terhadap himpunan data yang berbeda yang berasal dari aliran data yang berbeda pula.

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

  • Komputer MISD (Multiple Instruction stream-Single Data stream)

Komputer jenis ini memiliki n unit pemroses yang masing-masing menerima dan mengoperasikan instruksi yang berbeda terhadap aliran data yang sama, dikarenakan setiap unit pemroses memiliki unit pengendali yang berbeda. Keluaran dari satu pemroses menjadi masukan bagi pemroses berikutnya. Belum ada perwujudan nyata dari komputer jenis ini kecuali dalam bentuk prototipe untuk penelitian.

Sebagai contoh, dengan menggunakan kasus yang sama pada contoh model SIMD namun cara untuk menyelesaikannya 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.

  • Komputer MIMD (Multiple Instruction stream-Multiple Data stream)

Pada sistem komputer MIMD murni terdapat interaksi di antara n pemroses. Hal ini disebabkan seluruh aliran dari dan ke memori berasal dari space data yang sama bagi semua pemroses. Komputer MIMD bersifat tightly coupled jika tingkat interaksi antara pemroses tinggi dan disebut loosely coupled jika tingkat interaksi antara pemroses rendah.

Pada Multiple Instruction, Multiple Data biasanya 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.

Apa Itu Message Passing Interface?

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

MPI ini merupakan standard yang dikembangkan untuk membuat aplikasi pengirim pesan secara portable. Sebuah komputasi paralel terdiri dari sejumlah proses, dimana masing-masing bekerja pada beberapa data lokal. Setiap proses mempunyai variabel lokal, dan tidak ada mekanisme suatu proses yang bisa mengakses secara langsung memori yang lain. Pembagian data antar proses dilakukan dengan message passing, yaitu dengan mengirim dan menerima pesan antar proses.
MPI menyediakan fungsi-fungsi untuk menukarkan antar pesan. Kegunaan MPI yang lain adalah
  1. Menulis kode paralel secara portable,
  2. Mendapatkan performa yang tinggi dalam pemrograman paralel, dan
  3. Menghadapi permasalahan yang melibatkan hubungan data irregular atau dinamis yang tidak begitu cocok dengan model data paralel.

Sedangkan Parallel Virtual Machine?

Adalah paket software yang mendukung pengiriman pesan untuk komputasi parallel antar komputer. PVM dapat berjalan diberbagai macam variasi UNIX atau pun windows dan telah portable untuk banyak arsitektur seperti PC, workstation, multiprocessor dan superkomputer.

Sistem PVM terbagi menjadi dua. Pertama adalah daemon, pvmd, yang berjalan pada mesin virtual masing-masing komputer. Mesin virtual akan dibuat, ketika User mengeksekusi aplikasi PVM. PVM dapat dieksekusi melalui prompt UNIX disemua host. Bagian kedua adalah library interface rutin yang mempunyai banyak fungsi untuk komunikasi antar task . Library ini berisikan rutin yang dapat dipanggil untuk pengiriman pesan, membuat proses baru, koordinasi task dan konfigurasi mesin virtual.

Salah aturan main yang penting dalam PVM adalah adanya mekanisme program master dan slave/worker. Programmer harus membuat Kode master yang menjadi koordinator proses dan Kode slave yang menerima, menjalankan, dan mengembalikan hasil proses ke komputer master. Kode master dieksekusi paling awal dan kemudian melahirkan proses lain dari kode master. Masing-masing program ditulis menggunakan C atau Fortran dan dikompilasi dimasing-masing komputer. Jika arsitektur komputer untuk komputasi paralel semua sama, (misalnya pentium 4 semua), maka program cukup dikompilasi pada satu komputer saja. Selanjutnya hasil kompilasi didistribusikan kekomputer lain yang akan menjadi node komputasi parallel. Program master hanya berada pada satu node sedangkan program slave berada pada semua node.

Komunikasi dapat berlangsung bila masing-masing komputer mempunyai hak akses ke filesystem semua komputer. Akses kefile system dilakukan melalui protokol rsh yang berjalan di unix atau windows. Berikut adalah langkah pengaturan pada masing-masing komputer :
  1. Buat file hostfile yang berisi daftar node komputer dan nama user yang akan dipakai untuk komputasi parallel. Bila nama user pada semua komputer sama misalnya nama user riset pada komputer C1, C2,C3 dan C4, maka hostfile ini boleh tidak ada. Hostfile ini dapat digunakan bila nama user di masing-masing komputer berbeda.
  2. Daftarkan IP masing-masing komputer pada file /etc/hosts/hosts.allow dan /etc/hosts/hosts.equiv.
  3. Penambahan dan penghapusan host secara dinamis dapat dilakukan melalui konsole PVM. Bila IP tidak didefinisikan pada hostfile¸ cara ini dapat digunakan.
Program PVM terdiri dari master dan slave, dimana program master dieksekusi paling awal dan kemudian melahirkan proses lain. PVM memanggil rutin pvm_spawn() untuk melahirkan satu atau dua proses lebih yang sama. Fungsi-fungsi untuk PVM versi bahasa C mempunyai rutin awalan pvm. Pengiriman dan penerimaan task diidentifikasi dengan TID (Task Identifier). TID ini bersifat unik dan digenerate oleh pvmd lokal. PVM berisi beberapa rutine yang mengembalikan nilai TID sehingga aplikasi user dapat mengidentifikasi task lain disistem.
Secara umum, langkah implementasi komputasi parallel sebagai berikut :
  1. Jalankan PVM daemon pada setiap mesin dalam cluster
  2. Jalankan program master pada master daemon
  3. Master daemon akan menjalankan proses slave.

Bagaimana Perkembangan Komputasi Pararel di Indonesia?

Usaha untuk membangun infrastruktur mesin paralel sudah dimulai sejak era 90-an, meski belum pada tahap serius dan permanen. Namun untuk pemrograman paralel sudah sejak awal menjadi satu mata-kuliah wajib di banyak perguruan tinggi terkait. Baru pada tahun 2005 dimulai pembuatan infrastruktur mesin paralel permanen, misalnya yang dikembangkan oleh Grup Fisika Teoritik dan Komputasi di P2 Fisika LIPI.

Didorong oleh perkembangan pemrograman paralel yang lambat, terutama terkait dengan sumber daya manusia (SDM) yang menguasainya, mesin paralel LIPI ini kemudian dibuka untuk publik secara cuma-cuma dalam bentuk LIPI Public Cluster (LPC). Saat ini LPC telah dikembangkan lebih jauh menjadi gerbang komputasi GRID di Indonesia dengan kerjasama global menjadi IndoGRID.

Pada tahun berikutnya, dengan dukungan dana dari proyek Inherent Dikti, Fasilkom UI juga membangun mesin paralel. Sementara itu pada tahun 2009, ITB membuat kluster hibrid CPU dan GPU yang pertama di Indonesia dengan kemampuan hingga 60 inti CPU dan 1920 inti GPU.
Sekian penjelasan saya mengenai Parallel Computing, Terima kasih sudah membaca 🙂

DISTRIBUTED PROCESSING

Pengertian Distributed Processing

Distributed data processing (DDP) system merupakan bentuk yang sering digunakan sekarang sebagai perkembangan dari time sharing system. Bila beberapa sistem komputer yang bebas tersebar yang masing-masing dapat memproses data sendiri dan dihubungkan dengan jaringan telekomunikasi, maka istilah time sharing sudah tidak tepat lagi. DDP system dapat didefinisikan sebagai suatu sistem komputer interaktif yang terpencar secara geografis dan dihubungkan dengan jalur telekomunikasi dan seitap komputer mampu memproses data secara mandiri dan mempunyai kemampuan berhubungan dengan komputer lain dalam suatu sistem.

Contoh Sistem Pengolahan Data terdistribusi

  1. Internet
  • Jaringan komputer dan aplikasi yang heterogen.
  • Mengimplementasikan protokol internet.
  1. Intranet
  • Jaringan yang teradminitrasi secara lokal.
  • Terhubung ke internet melalui firewall.
  • Menyediakan layanan internet dan eksternal.
  1. Mobile Computing ( Sistem Komunikasi telepon seluler)
  • Menggunakan frekuensi radio sebagai media transmisi
  • Perangkat dapat bergerak kemanapun asal masih terjangkau dengan frekuensinya
  • Dapat menghandle/dihububngkan dengan perangkat lain
  1. Sistem Telepon
  • ISDN atau yang biasa disebut jaringan telpon tetap (dengan kabel).
  • PSTN jaringan telepon/telekomunikasi yang semuanya digital.
  1. Network File System (NTFS)
  • WWW

Contoh Impementasi Distributed Data Processing System

Aplikasi facebook.Com yang biasa anda gunakan untuk bersosialisai dengan saudara, kawan dan orang di seluruh dunia melalui internet. Bila kita lihat aplikasi tersebut, database tidak didistribusikan, tetapi proses sistem dan penggunaan fungsi-fungsi atau feature pada sistem terpisah-pisah prosesnya tidak satu proses saja dalam satu waktu. Pada waktu tertentu ada orang yang sedang isi status, dan mungkin di waktu yang sama ada sedang mencari teman, ada yang mengupload foto dan sebagainya.  Tampak disini beberapa proses pada sistem terdistribusi pada setiap client yang berbeda.

Pada penggunaan aplikasi pembayaran / transaksi online pada suatu perusahaan, misalnya saja tiket pesawat terbang. Aplikasi tersebut juga contoh dari aplikasi pengolahan data terdistribusi, dimana data pembayaran ada tersimpan di database bank, sementara data tiketnya tersimpan di database server maskapai yang menyediakan aplikasi tiket online tersebut. Jadi dapat dikatakan bila aplikasi yang digunakan menggunakan database yang terpisah tidak satu database saja, maka dapat dikatakan itu adalah aplikasi pengolahan data terdistribusi atau dikenal juga dengan distributed  data processing system.

Pengantar 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 (GRAPHICAL PROCESSING UNIT)

Sebagaimana telah kita ketahui bahwa Cuda adalah platform komputasi paralel dan model pemrograman yang diciptakan oleh perusahaan perangkat keras dunia yaitu NVIDIA. hal ini memungkinkan peningkatan dramatis dalam kinerja komputasi dengan memanfaatkan kekuatan dari Graphics Processing Unit(GPU).

GPU (Graphical Processing Unit) pada 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 /sebagaimana kenyataan sesungguhnya, 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 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.

Keuntungan dengan CUDA sebenarnya tidak luput dari teknologi aplikasi yang ada. CUDA akan mempercepat proses aplikasi tertentu, tetapi tidak semua aplikasi yang ada akan lebih cepat walaupun sudah mengunakan fitur CUDA. . Hal ini tergantung seberapa cepat procesor yang digunakan, dan seberapa kuat sebuah GPU yang dipakai. Dan bagian terpenting adalah aplikasi apa yang memang memanfaatkan penuh kemampuan GPU dengan teknologi CUDA. Kedepan seperti pengembang software Adobe akan ikut memanfaatkan fitur CUDA pada aplikasi mereka. Jawaban akhir adalah, untuk memanfaatkan CUDA kembali melihat aplikasi software yang ada. Apakah software yang ada memang mampu memanfaatkan CUDA dengan proses melalui GPU secara penuh. Hal tersebut akan berguna untuk mempercepat selesainya proses pada sebuah aplikasi. Dengan kecepatan proses GPU, aplikasi akan jauh lebih cepat. Khususnya teknologi ilmu pengetahuan dengan ramalan cuaca, simulator pertambangan atau perhitungan yang rumit dibidang keuangan. Sedangkan aplikasi umum sepertinya masih harus menunggu.

Paralelisme

Paralelisme (parallelism) lahir dari pendekatan yang biasa dipergunakan oleh para perancang sistem untuk menerapkan konsep pemrosesan konkuren. Teknik ini meningkatkan kecepatan proses dengan cara memperbanyak jumlah modul perangkat keras yang dapat beroperasi secara simultan disertai dengan membentuk beberapa proses yang bekerja secara simultan pada modul-modul perangkat keras tersebut. Secara formal, pemrosesan parallel adalah sebuah bentuk efisien pemrosesan informasi yang menekankan pada eksploitasi dari konkurensi kejadian-kejadian dalam proses komputasi.Pemrosesan paralel dapat terjadi pada beberapa tingkatan (level) proses. Tingkatan tertinggi pemrosesan paralel terjadi pada proses di antara banyak job (pekerjaan) atau pada program yang menggunakan multiprogramming, time sharing, dan multiprocessing.

 Multiprogramming kemampuan eksekusi terhadap beberapa proses perangkat lunak dalam sebuah system secara serentak, jika dibandingkan dengan sebuah proses dalam satu waktu, dan timesharing berarti menyediakan pembagian selang waktu yang tetap atau berubah-ubah untuk banyak program. Multiprocessing adalah dukungan sebuah sistem untuk mendukung lebih dari satu prosesor dan mengalokasikan tugas kepada prosesor-prosesor tersebut. Multiprocessing sering diimplementasikan dalam perangkat keras (dengan menggunakan beberapa CPU sekaligus), sementara multiprogramming sering digunakan dalam perangkat lunak. Sebuah sistem mungkin dapat memiliki dua kemampuan tersebut, salah satu di antaranya, atau tidak sama sekali. Pemrosesan paralel dapat juga terjadi pada proses di antara prosedurprosedur atau perintah perintah (segmen program) pada sebuah program.Untuk meningkatkan kecepatan proses komputasi, dapat ditempuh dua cara :

Peningkatan kecepatan perangkat keras.

Komponen utama perangkat keras komputer adalah processor. Meskipun kecepatan processor dapat ditingkatkan terus, namun karena keterbatasan materi pembuatnya, tentu ada suatu batas kecepatan yang tak mungkin lagi dapat dilewati. Karena itu timbul ide pembuatan komputer multiprocessor. Dengan adanya banyak processor dalam satu komputer, pekerjaan bisa dibagi-bagi kepada masing-masing processor. Dengan demikian lebih banyak proses dapat dikerjakan dalam satu saat. Peningkatan kecepatan setiap proses bisa dicapai melalui peningkatan kecepatan perangkat lunak. Kecepatan perangkat lunak sangat ditentukan oleh algoritmanya.

Peningkatan kecepatan perangkat lunak.

Program komputer untuk komputer sekuensial harus menyediakan sederetan operasi untuk dikerjakan oleh prosesor tunggal. Program komputer untuk komputer paralel harus menyediakan sederetan operasi untuk beberapa prosesor untuk dikerjakan secara paralel, termasuk operasi untuk mengatur dan mengitegrasikan prosesor-prosesor yang terpisah tersebut mengerjakan suatu komputasi yang koheren. Kebutuhan akan pembuatan dan pengaturan berbagai aktivitas komputasi paralel menambah dimensi baru proses dari pemrograman komputer. Algoritma untuk problem yang spesifik harus diformulasikan sedemikian rupa, agar menghasilkan aliran operasi paralel yang kemudian akan dieksekusi di prosesor yang berbeda. Karena itu, meskipun arsitektur multiprosesor dan multikomputer mempunyai pontensi yang tinggi untuk meningkatkan kemampuan komputasi, potensi ini akan tercapai melalui pengertian yang baik mengenai bahasa pemrograman paralel dan perancangan algoritma paralel.

Tingkat Paralelisme

Berdasarkan tingkat paralelismenya prosesor paralel dapat dibagi menjadi beberapa tingkat sebagai berikut :

  1. Komputer Array :
  2. Prosesor array : beberapa prosesor yang bekerja sama untuk mengolah set instruksi yang sama dan data yang berbeda – beda atau biasa disebut SIMD (Single Instruction-stream Multiple Data)
  3. Prosesor vektor : beberapa prosesor yang disusun seperti pipeline.
  4. Multiprosesor, yaitu sebuah sistem yang memiliki 2 prosesor atau lebih yang saling berbagi memori.
  5. Multikomputer, yaitu sebuah sistem yang memiliki 2 prosesor atau lebih yang masing-masing prosesor memiliki memori sendiri.

Jenis-Jenis Pemrosesan Paralel

Pemrosesan paralel dapat dibagi ke dalam beberapa klasifikasi, sebagai berikut :

  1. Berdasarkan simetri penjadwalannya, pemrosesan parallel dapat dibagi dalam beberapa jenis:
  2. a) Asymmetric Multiprocessing (ASMP)
  3. b) Symmetric Multiprocessing (SMP)
  4. c) ClusteringPoliteknik Telkom Sistem Komputer
  5. Berdasarkan aliran instruksi dan datanya, pemrosesan parallel dapat dibagi dalam beberapa jenis:
  6. a) SISD (Single Instruction on Single Data Stream)
  7. b) SIMD (Single Instruction on Multiple Data Stream)
  8. c) MISD (Multiple Instruction on Single Data Stream)
  9. d) MIMD (Multiple Instruction on Multiple Data Stream)
  10. Berdasarkan kedekatan antar prosesor, pemrosesan parallel dapat dibagi dalam beberapa jenis:
  11. a) Multikomputer (Loosely Coupled/ local memory) dengan memori yang terdistribusi
  12. b) Multiprosesor (Tightly Coupled/ global memory) dengan memori yang dapat digunakan bersama (shared memory)

Sumber & Referensi:

– https://fskita.com/2018/07/13/distributed-data-processing-system-berserta-contoh-implementasi/

– https://rachmadpropaganda.wordpress.com/2011/04/01/online-communication/

Google Image

QUANTUM COMPUTER

140903112645-google-quantum-computer-1024x576

#AnbiyaShafardhiawanRizqullah

#4IA19

#KomputerKuantum

#PendahuluanKomputerKuantum

Teknologi komputer merupakan salah satu teknologi yang paling cepat mengalami perkembangan dan kemajuan. Komputer-komputer yang ada saat ini sudah mencapai kemampuan yang sangat mengagumkan. Tetapi kedahsyatan komputer tercanggih yang ada saat ini pun masih belum bisa memuaskan keinginan manusia yang bermimpi untuk membuat sebuah Supercomputer yang benar-benar memiliki kecepatan super. Komputer yang nantinya layak untuk benar-benar disebut sebagai Komputer Super ini adalah Komputer Kuantum. Teori tentang komputer kuantum ini pertama kali dicetuskan oleh fisikawan dari Argonne National Laboratory sekitar 20 tahun lalu. Paul Benioff merupakan orang pertama yang mengaplikasikan teori fisika kuantum pada dunia komputer di tahun 1981.

Komputer yang biasa kita gunakan sehari-hari merupakan komputer digital. Komputer digital sangat berbeda dengan komputer kuantum yang super itu. Komputer digital bekerja dengan bantuan microprocessor yang berbentuk chip kecil yang tersusun dari banyak transistor. Microprocessor biasanya lebih dikenal dengan istilah Central Processing Unit (CPU) dan merupakan ‘jantung’nya komputer. Microprocessor yang pertama adalah Intel 4004 yang diperkenalkan pada tahun 1971. Komputer pertama ini cuma bisa melakukan perhitungan penjumlahan dan pengurangan saja. Memory komputer menggunakan sistem binary atau sistem angka basis 2 (0 dan 1) yang dikenal sebagai BIT (singkatan dari Binary digIT). Konversi dari angka desimal yang biasa kita gunakan (angka berbasis 10 yang memiliki nilai 0 sampai 9) adalah sebagai berikut :

0 = 0                   5 = 101

1 = 1                   6 = 110

2 = 10                 7 = 111

3 = 11                 8 = 1000

4 = 100               9 = 1001

10 = 1010          14 = 1110

11 = 1011          15 = 1111

12 = 1100          16 = 10000

13 = 1101          17 = 10001

Kalau kita ingin menghitung angka apa yang dilambangkan oleh 101001 caranya sebagai berikut (menggunakan sistem 2n):

(1 x 2^5) + (0 x 2^4) + (1 x 2^3) + (0 x 2^2) + (0 x 2^1) + (1 x 2^0) = 32 + 0 + 8 + 0 + 0 +1 = 41.

 

Sistem inilah yang selama ini kita gunakan saat kita mengolah informasi menggunakan komputer. Quantum Computer atau komputer kuantum memanfaatkan fenomena ‘aneh’ yang disebut sebagai superposisi. Dalam mekanika kuantum, suatu partikel bisa berada dalam dua keadaan sekaligus. Inilah yang disebut keadaan superposisi. Dalam komputer kuantum, selain 0 dan 1 dikenal pula superposisi dari keduanya. Ini berarti keadaannya bisa berupa 0 dan 1, bukan hanya 0 atau 1 seperti di komputer digital biasa. Komputer kuantum tidak menggunakan Bits tetapi QUBITS (Quantum Bits). Karena kemampuannya untuk berada di bermacam keadaan (multiple states), komputer kuantum memiliki potensi untuk melaksanakan berbagai perhitungan secara simultan sehingga jauh lebih cepat dari komputer digital.

Komputer kuantum menggunakan partikel yang bisa berada dalam dua keadaan sekaligus, misalnya atom-atom yang pada saat yang sama berada dalam keadaan tereksitasi dan tidak tereksitasi, atau foton (partikel cahaya) yang berada di dua tempat berbeda pada saat bersamaan. Apa maksudnya ini?

Atom memiliki konfigurasi spin. Spin atom bisa ke atas (up), bisa pula ke bawah (down). Misalnya saat spin atom mengarah ke atas (up) kita beri lambang 1, sedangkan spin down adalah 0 (seperti dalam sistem binary di komputer digital). Atom-atom berada dalam keadaan superposisi (memiliki spin up dan down secara
bersamaan) sampai kita melakukan pengukuran. Tindakan pengukuran memaksa atom untuk ‘memilih’ salah satu dari kedua kemungkinan itu. Ini berarti sesudah kita melakukan pengukuran, atom tidak lagi berada dalam keadaan superposisi. Atom yang sudah mengalami pengukuran memiliki spin yang tetap: up atau down.

Saat konsep ini diterapkan dalam komputer kuantum, keadaan superposisi terjadi pada saat proses perhitungan sedang berlangsung. Sistem perhitungan pada komputer kuantum ini berbeda dengan komputer digital. Komputer digital melakukan perhitungan secara linier, sedangkan komputer kuantum melakukan semua perhitungan secara bersamaan (karena ada multiple states semua perhitungan dapat berlangsung secara simultan di semua state). Ini berarti ada banyak kemungkinan hasil perhitungan. Untuk mengetahui jawabannya (hasil perhitungannya) kita harus melakukan pengukuran qubit. Tindakan pengukuran qubit ini menghentikan proses perhitungan dan memaksa sistem untuk ‘memilih’ salah satu dari semua kemungkinan jawaban yang ada.

Dengan sistem paralelisme perhitungan ini, kita bisa membayangkan betapa cepatnya komputer kuantum. Komputer digital yang paling canggih saat ini (setara dengan komputer kuantum 40 qubit) memiliki kemampuan untuk mengolah semua data dalam buku telepon di seluruh dunia (untuk menemukan satu nomor telepon tertentu) dalam waktu satu bulan. Jika menggunakan komputer kuantum proses ini hanya memerlukan waktu 27 menit!

Ada satu fenomena ‘aneh’ lain dari mekanika kuantum yang juga dimanfaatkan dalam teknologi komputer kuantum: Entanglement. Jika dua atom mendapatkan gaya tertentu (outside force) kedua atom tersebut bisa masuk pada keadaan ‘entangled’. Atom-atom yang saling terhubungkan dalam entanglement ini akan tetap terhubungkan walaupun jaraknya berjauhan. Analoginya adalah atom-atom tersebut seperti sepasang manusia yang punya ‘telepati’. Jika yang satu dicubit, maka pasangannya (di mana pun ia berada) akan merasa sakit. Perlakuan terhadap salah satu atom mempengaruhi keadaan atom pasangannya. Jika yang satu memiliki spin up (kita baru bisa mengetahuinya setelah melakukan pengukuran) maka kita langsung mengetahui bahwa pasangannya pasti memiliki spin down tanpa kita perlu mengukurnya kembali. Ini melambangkan sistem
komunikasi yang super cepat. Komunikasi menggunakan komputer kuantum bisa mencapai kecepatan yang begitu luar biasa karena informasi dari satu tempat ke tempat lain dapat ditransfer secara instant. Begitu cepatnya sehingga terlihat seakan-akan mengalahkan kecepatan cahaya!

Saat ini perkembangan teknologi sudah menghasilkan komputer kuantum sampai 7 qubit, tetapi menurut penelitian dan analisa yang ada, dalam beberapa tahun mendatang teknologi komputer kuantum bisa mencapai 100 qubit. Kita bisa membayangkan betapa cepatnya komputer masa depan nanti. Semua perhitungan yang biasanya butuh waktu berbulan-bulan, bertahun-tahun, bahkan berabad-abad pada akhirnya bisa dilaksanakan hanya dalam hitungan menit saja jika kita menggunakan komputer kuantum yang super canggih dan super cepat itu.

Di masa mendatang kita akan menggunakan komputer yang tidak lagi tersusun dari transistor-transistor mini seperti sekarang, Komputer kuantum tidak lagi memerlukan chip komputer yang semakin lama semakin padat karena semakin berlipatgandanya jumlah transistor yang dibutuhkan untuk meningkatkan kinerja komputer. Komputer masa depan justru dipenuhi oleh cairan organik sebagai ‘jantung’nya. Cairan organik ini mengandung atom-atom/partikel-partikel yang bisa berada dalam keadaan superposisi tersebut. Ini berarti, kita benar-benar memanfaatkan zat organik alami untuk menjadi ‘kalkulator’ canggih karena ternyata cairan organik dari alam memiliki bakat berhitung!

 

 

sumber : Yohanes Surya.Com

 

STREAMING VIDIO VIA VLC PLAYER

Kali ini saya akan menjelaskan bagaimana cara stream vidio via vlc player.

Sebelum melanjutkan ke bagian tutorial, pertama tama saya akan menjelaskan apa itu VLC PLAYER, dan apa itu STREAM.

Menurut Wikipedia VLC Media Player merupakan perangkat lunak (software) pemutar beragam berkas (file) multimedia, baik video maupun audio dalam berbagai format, seperti MPEG, DivX, Ogg, dan lain-lain. VLC Media Player juga dapat digunakan untuk memutar DVD,VCD, maupun CD. VLC Media Player bersifat sumber terbuka (open source) dan tersedia untuk berbagai sistem operasi. Mulai dari Microsoft Windows, beragam distro Linux, Mac OS, dan beberapa sistem operasi lainnya.

Salah satu kelebihan yang paling menonjol dari VLC Media Player adalah kelengkapan codec yang dimiliki. Dengan kata lain, VLC dapat memutar hampir seluruh jenis berkas audio maupun video yang ada.

VLC Media Player adalah program multimedia player yang sangat portabel. Singkatnya, program ini bisa dipakai untuk memutar berkas multimedia, baik yang ada di komputer, keping CD atau DVD, hingga untuk streaming di internet.

Di balik tampilan programnya yang sederhana, pemutar berkas multimedia ini dilengkapi dengan beragam fitur tambahan, seperti kemampuan subtitle, tag format, konversi, filter, skin, dapat dioperasikan melalui berbagai interface, tersedia dalam bahasa Indonesia, dan masih banyak lagi. Bahkan, program ini juga bisa dijadikan sebagai server untuk kebutuhan streaming di jaringan lokal dan internet.

Berikut adalah spesifikasi VLC Media Player:

Ukuran File: 9.8MB (unduh), 16.3MB (installed)
Publisher: PortableApps.com (John T. Haller) dan VideoLAN

Kalian bisa download VLC Player versi windows disini.

Sering kali kita menjumpai istilah streaming ketika kita melihat sebuah video atau audio di internet. Yaps, Streaming merupakan sebuah teknologi yang digunakan untuk memainkan sebuah file audio maupun video yang secara langsung maupun dengan prerecord yang berada di web server.

File – File audio maupun video ini diletakkan di sebuah server komputer yang dapat secara langsung diakses di komputer client atau komputer kita masing-masing melalui koneksi internet, sesaat setelah ada permintaan dari pengguna sehingga proses download file tersebut yang menghabiskan waktu cukup lama dapat dihindari.

Ketika file-file tersebut di-stream maka akan terbentuklah sebuah “buffer” di komputer client dan pada waktu itu data audio atau video tersebut akan mulai di-download ke dalam buffer yang telah terbentuk pada mesin client. Setelah buffer terisi dalam waktu hitungan detik, maka secara otomatis file video ataupun audio akan di jalankan oleh sistem. Sistem akan membaca informasi dari buffer sambil tetap melakukan proses download file sehingga proses streaming tetap berlangsung ke mesin client. Delay waktu sesaat sebelum file video atau audio di jalankan berkisar antara 5 sampai dengan 30 detik.

Konsep dasar dari video streaming ini yaitu membagi paket video ke dalam beberapa bagian (dipecah), dan mentransmisikan paket-paket tersebut, kemudian dari sisi (client) dapat men-decode dan memainkan potongan paket file video tanpa harus menunggu seluruh file terkirim ke mesin penerima.

Konsep video streaming di bagi ke dalam tiga tahap, antara lain:

  • Mempartisi atau membagi data video yang telah terkompresi ke dalam paket paket data
  • Pengiriman paket – paket data video
  • Pihak penerima (client) mulai men-decode dan menjalankan video walaupun paket data yang lain masih dalam proses pengiriman ke PC client.

Yang di butuhkan adalah : Laptop, handphone, koneksi Wi-Fi yang sama.

  1. Jika sudah mendownload VLC Player, langkah selanjutnya adalah install  aplikasi VLC ke windows kalian masing masing. Lakukan instalasi standard (next next saja).
  2. Kemudian buka VLC player yang sudah di install tadi.Screenshot (1)
  3. Pada bagian menu toolbar, cari tulisan media pada pojok kiri atas. Lalu klik dan pilih Open Network Stream seperti pada gambar dibawah iniScreenshot (2)
  4. Kemudian akan muncul popup yang akan meminta kita memasukan network url.Screenshot (3)
  5. Sebelum melanjutkan ke langkah berikutnya, pastikan kalian mengkoneksikan perangkat kalian(personal computer maupun handphone) ke satu jaringan Wi-Fi. Lalu cek ip kalian masing masing dengan cara > buka CMD atau command prompt > pada cmd ketikan “ipconfig” > lalu cari tulisan IPv4 Address. Lihat gambar dibawah ini untuk lebih jelasnya.Screenshot (4)
  6. Kembali lagi ke VLC, pindah ke tab File, lalu klik add.Screenshot (6)
  7. Lalu akan muncul popup window lagi, yang mengharuskan kita memilih salah satu file vidio dari pc kita.Screenshot (7)
  8. Jika sudah, klik open atau klik 2x pada vidio yang ingin di stream. Kemudian pada window open media, pergi menuju tombol play di bawah kanan. Klik tanda panah kebawah di samping tulisan play, pilih stream. Atau bisa dengan hotkeys Alt+S.Screenshot (8)
  9. Jika sudah akan muncul window seperti gambar dibawah ini. Pastikan kembali source nya sudah benar lalu klik next saja.Screenshot (9)
  10. Dan ganti new destination nya menjadi HTTP. Ceklis juga Display Locally. Kemudian klik Add.Screenshot (10)
  11. Disini bagian terpentingnya. Pada bagian port, saya menggunakan port 8080. Jika kalian sudah memakai port 8080, dianjurkan menggunakan port lain. Port 8080 biasanya digunakan di XAMPP untuk menyalakan Apache dan MySql. Lalu isi Path sesuai dengan keinginan kalian, disini saya menggunakan “/” saja.Screenshot (11)
  12. Berikutnya adalah menentukan format vidio yang akan kalian stream-kan. VLC bisa mengkonversi format vidio dari format (misal) mp4 menjadi webm, ogg, dll. Tentu saja jika ingin stream dan melakukan konversi vidio, dibutuhkan pc yang high-end jika kalian menggunakan pc biasa biasa saja seperti saya, diajurkan mengkosongkan saja (default) atau tidak perlu memilih apapun. Jangan lupa di ceklis Activate Transcoding.Screenshot (12)
  13. Jika sudah, di window berikutnya di ceklis Stream all elementary streams. Ini berfungsi untuk mengaktifkan suara saat streaming. Jika sudah klik stream!Screenshot (13)
  14. Dan jangan lupa untuk mengizinkan vlc di firewall kalian masing masing.
  15. Dan vidio kalian sudah di siarkan secara langsung dari pc kalian sendiri melalui jaringan yang terkoneksi bersama sama via VLC.

 

CARA MENONTON STREAMING DARI HANDPHONE

  1. Langkah pertama tentu saja mendownload VLC di playstore.

    Slideshow ini membutuhkan JavaScript.

     

  2. Buka aplikasi VLC di handphone.Screenshot_20190410-220911_VLC
  3. Izinkan VLC untuk mengakses storage handphone.Screenshot_20190410-220918_Package installer
  4. Kemudian pada halaman utama VLC, lihat ke pojok kiri atas. Ada navigation bar, klik lalu pilih stream.

    Slideshow ini membutuhkan JavaScript.

     

  5. Lalu VLC akan meminta kalian untuk memasukan network address.Screenshot_20190410-221019_VLC
  6. Network address diawali dengan ‘http://‘ disusul dengan IPv4 address kalian masing masing, dan setelah itu masukan port(dipisahkan oleh titik dua “:” ) yang sudah kalian tentukan lalu di ikuti dengan path yang sudah kita tentukan sebelumnya. Contoh : http://192.168.0.16:8080/ 
  7. Kemudian klik icon segitiga di samping kalian memasukan address sebelumnya.
  8. Dan kalian sudah melakukan Stream via VLC!

 

Selain dari handphone, streaming juga bisa dilakukan di browser kalian.

  1. Pertama caranya adalah tentu saja buka browser kalian (mozilla atau chrome).
  2. kemudian masukan Network Address seperti yang sudah kita lakukan pada VLC versi handphone.
  3. Lalu browser akan mendownload vidio yang kita siarkan.

 

 

Teori Komputasi

Teori Komputasi

 

#AnbiyaShafardhiawanRizqullah

#4IA19

#TeoriKomputasi

#PengantarKomputasiModern

Komputasi sebetulnya bisa diartikan sebagai cara untuk menemukan pemecahan masalah dari data input dengan menggunakan suatu algoritma. Hal ini ialah apa yang disebut dengan teori komputasi, suatu sub-bidang dari ilmu komputer dan matematika. Selama ribuan tahun, perhitungan dan komputasi umumnya dilakukan dengan menggunakan pena dan kertas, atau kapur dan batu tulis, atau dikerjakan secara mental, kadang-kadang dengan bantuan suatu tabel. Namun sekarang, kebanyakan komputasi telah dilakukan dengan menggunakan komputer.

Teori komputasi berkaitan dengan studi bagaimana persoalan (problem) dapat diselesaikan pada sebuah model dengan menggunakan algoritma. Model tersebut dinamakan model komputasi. Ada beberapa model yang digunakan, namun yang paling umum dipelajari adalah mesin Turing. Sebuah mesin Turing dapat dipikirkan sebagai komputer pribadi meja dengan kapasitas memori yang tak terhingga, namun 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, namun 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 mesin Turing dapat dipecahkan oleh komputer yang memiliki jumlah memori terbatas.

Teori komputasi dibagi lagi menjadi 3 ranting :

  1. Teori Otomata (automata theory)

Teori Otomata adalah teori mengenai mesin-mesin abstrak, dan berkaitan erat dengan teori bahasa formal. ada beberapa hal yang berkaitan dengan Otomata, yaitu Grammar. Grammar adalah bentuk abstrak yang dapat diterima (accept) untuk membangkitkan suatu kalimat otomata berdasarkan suatu aturan tertentu.

  1. Teori Komputabilitas (computability theory)

Teori komputabilitas bertujuan untuk memeriksa apakah persoalan komputasi dapat dipecahkan pada suatu model komputasi teoritis. Dengan kata lain, teori komputabilitas mengklasifikasikan persoalan sebagai dapat dipecahkan (solvable) atau persoalan yang tidak dapat dipecahkan (unsolvable). Teori kompleksitas bertujuan untuk mengkaji kebutuhan waktu dan ruang untuk memecahkan persoalan yang diselesaikan dengan pendekatan yang berbeda-beda.

  1. Teori Kompleksitas (computational complexity theory)

Teori kompleksitas mengklasifikasikan persoalan sebagai persoalan mudah (easy) atau persoalan sukar (hard).

 

Ketiganya(otomata, komputabilitas, dan kompleksitas) dikaitkan dengan pertanyaan:
“Apa yang dapat dilakukan oleh komputer danapa keterbatasannya?” (What are the fundamental capabilities and limitation of computers?)
• Pertanyaan senada dikemukakan oleh Peter J. Denning di dalam tulisannya(“Computer Science: The Discipline” in Encyclopedia of Computer Science) menyatakan bahwa pertanyaan fundamental yang mendasari ilmu komputer adalah: “What can be (efficiently) automated?” dengan kata lain: apa yang dapat dikomputasi?

•Studi teori komputasi di fokuskan untuk menjawab dua pertanyaan diatas:

1. Apa yang dapat dikomputasi?

2. Berapa banyak sumber daya(waktu/time dan ruang/space memori) yang dibutuhkan untuk melakukan komputasi tersebut?
• Untuk menjawab pertanyaan pertama dan kedua, teori komputabilitas dan teori kompleksitas sangat berhubungan erat.

• Teori komputabilitas bertujuan untuk memeriksa apakah persoalan komputasi dapat dipecahkan pada suatu model komputasi teoritis.

• Dengan kata lain, teori komputabilitas mengklasifikasikan persoalan sebagai dapat dipecahkan (solvable) atau persoalan yang tidak dapat dipecahkan (unsolvable).

• Untuk menjawab pertanyaan kedua, teori kompleksitas bertujuan untuk mengkaji kebutuhan waktu dan ruang untuk memecahkan persoalan yang diselesaikan dengan pendekatan yang berbeda-beda.

• Dengan kata lain, teori kompleksitas mengklasifikasikan persoalan sebagai persoalan mudah (easy) atau persoalan sukar (hard).
•Teori komputabilitas memperkenalkan beberapa konsep yang digunakan didalam teori kompleksitas.

• Teori otomata mengacu pada definisi dan sifat-sifat model komputasi.

• Beberapa model komputasi:

1. Finite State Automata (FSA)/Finite State Machine (FSM) (bentuk tunggal: automaton, plural: automata)

2. Push Down Automata (PDA)

3. MesinTuring(Turing Machine) atauTM
Di dalam teori komputasi, model komputasi yang sering dipakai adalah Mesin Turing.

 

 

sumber

Cara menginstall dan konfigurasi FTP Server pada Debian Server 8

Assalamu’alaikum WR., WB.  Pada kesempatan kali ini saya akan menjelaskan tentang bagaimana cara menginstall dan konfigurasi FTP Server pada Debian Server 8. Sebelum kita memasuki tahap atau langkah – langkah dalam penginstallan, kita harus mengetahui terlebih dahulu “apakah yang dimaksud dengan FTP”. FTP (File Transfer Protocol) merupakan protokol yang digunakan untuk melakukan penukaran atau saling bertukar file melalui sebuah jaringan. Dimana FTP seringkali digunakan untuk keperluan seseorang dalam mendownload sebuah file dari server maupun untuk mengupload file ke sebuah server tertentu.

 

Kemudian cara kerja dari protokol FTP ini hampir sama dengan protokol lainnya. Dimana pada keadaan default, FTP berjalan pada port 21 dan bekerja pada protocol TCP/IP. Selanjutnya dalam FTP Server, kita bisa menggunakan dua cara satu User Authentication Login (Password Protected) dan yang kedua Anonymous LogIn (Guest OK).

Terdapat dua aplikasi yang paling popular untuk melakukan instalasi dan konfigurasi FTP server pada distro Debian, diantaranya yaitu ProFTPd dan Vsftpd. Pada kesempatan kali ini saya menggunakan ProFTPd, Berikut ini merupakan langkah- langkah untuk install dan konfigurasi FTP pada Debian Server 8 :

  • Langkah pertama yang harus dilakukan adalah menginstall aplikasi proftpd. Dimana untuk dapat menginstall proftpd dapat dilakukan dengan menuliskan script seperti dibawah ini :

    1-0
    1

    Kemudian jika muncul sebuah pertanyaan untuk lanjut, masukkan ‘y/Y’ untuk menjalankan instalasi pada proftd.

  • Langkah selanjutnya masuk kedalam konfigurasi ProFTPD, pada bagian ini pilih “Standalone”  kemudian OK.
    2
  • Langkah berikutnya adalah buka file yang terdapat pada /etc/proftpd/proftpd.conf. Dimana untuk membuka file tersebut dapat dilakukan dengan menuliskan script seperti dibawah ini :

    3-2

  • Setelah itu tambahkan script dibawah ini ke dalam baris paling akhir kemudian pilih save/simpan.

4-2

  • Langkah selanjutnya yaitu lakukan restart pada service nya. Dimana untuk membuka file tersebut dapat dilakukan dengan menuliskan script seperti dibawah ini :
    5-2

    Kemudian jika muncul sebuah pertanyaan untuk lanjut, masukkan ‘ok’ untuk menjalankan restart servicenya.

  • Langkah berikutnya adalah proses pengecekan. Dimana pengecekan ini dapat dilakukan dengan cara membuka web browser kemudian masukkan/ketikkan pada address bar “ftp://sibro.id” atau “ftp://192.168.2.2”  kemudian masukkan username dan passwordnya.
    6-1
    6-2
  • Kemudian jika dapat berjalan atau berhasil, maka akan muncul sebuah tampilan seperti pada gambar di bawah ini :
    7-2

CLOUD COMPUTING & VIRTUALISASI

#AnbiyaShafardhiawanRizqullah

#4IA19

#CloudComputing

#Virtualisasi

#PengantarKomputasiModern

 

Sekarang, kita sudah memasuki era dengan cloud storage.

Komputasi awan (cloud computing) adalah teknologi yang menjadikan internet sebagai pusat pengelolaan data dan aplikasi, di mana pengguna komputer diberikan hak akses (login). Penerapan komputasi awan saat ini sudah dilakukan oleh sejumlah perusahaan IT terkemuka di dunia. Sebut saja di antaranya adalah Google (google drive) dan IBM (blue cord initiative). Sedangkan di Indonesia, salah satu perusahaan yang sudah menerapkan komputasi awan adalah Telkom (Anggi, pusatteknologi.com).

Ada 3 (tiga) model pengiriman (delivery) dalam komputasi awan: (1) Software as a Service (SaaS), (2) Platform as a Service (PaaS), dan (3) Infrastructure as a Service (IaaS). SaaS merupakan layanan untuk menggunakan aplikasi yang telah disediakan – penyedia layanan mengelola platform dan infrastruktur yang menjalankan aplikasi tersebut. PaaS merupakan layanan untuk menggunakan platform yang telah disediakan – pengembang fokus pada aplikasi yang dibuat tanpa memikirkan tentang pemeliharaan platform. IaaS merupakan layanan untuk menggunakan infrastruktur yang telah disediakan.

20_3

Sumber:

2016, mytechlogy.com

Ada 4 (empat) model penyebaran (deployment) dalam komputasi awan: (1) public cloud, (2) private cloud, (3) hybrid cloud, dan (4) community cloud. Public cloud penggunaannya hampir sama dengan shared hosting, di mana dalam 1 (satu) server ada banyak pengguna. Private cloud hanya ada 1 (satu) pengguna dalam server. Hybrid cloud dapat digunakan untuk public atau private cloud. Sedangkan community cloud dapat digunakan bersama-sama oleh beberapa perusahaan yang memiliki kesamaan kepentingan (Ulum, 2015, blog.wowrack.co.id). Model penyebaran komputasi awan kadang sering disebut sebagai cloud storage.

Komputasi awan menjawab masalah dan tantangan IT. Sebut saja di antaranya adalah masalah tingginya anggaran investasi IT dan rencana pemulihan bencana (Disaster Recovery Plan, DRP) sebagai bagian dari business continuity. Kedua masalah tersebut dapat terjawab dengan baik oleh komputasi awan. Masalah lainnya, seperti tingginya tuntutan kebutuhan perusahaan, dapat terjawab dengan baik oleh komputasi awan dengan cara ketangkasan dalam pengembangan (seagate.com).

Beberapa pertimbangan utama sebelum beralih ke komputasi awan: (1) ketersediaan dan kecepatan internet, (2) kontrak jaminan tingkat pelayanan (Service Level Agreement, SLA), (3) komitmen/kesungguhan pelayanan penyedia jasa, (4) pengalaman penyedia jasa (khususnya di bidang komputasi awan), (5) on demand self service, (6) komputer server down, (7) keamanan dan privasi, (8) lokasi data dan yurisdiksi/ketetapan hukum, (9) backup data dan DRP, dan (10) biaya yang akan dikeluarkan.

Dengan adanya komputasi awan, jumlah komputer beserta sejumlah perangkat infrastruktur yang melekat dapat dihilangkan/dikurangi secara signifikan. Pergeseran tren perusahaan dalam membeli serta memelihara server dan aplikasi on-premise yang mahal, bergerak menuju ke bentuk metode penyewaan IT, sesuai dengan kebutuhan (cloudindonesia.com).

IT bukan merupakan pemberi kontribusi terbesar dalam pertambahan panas di Bumi. Tapi dengan menerapkan Green IT, salah satunya menerapkan komputasi awan, maka akan memberikan kontribusi positif dalam rangka mengurangi dampak negatif dari pemanasan global. Aktivitas cetak-mencetak kertas dapat dihindari. Komputasi awan mendukung Green IT, khususnya dalam hal efisiensi energi (karena penghilangan komputer beserta perangkatnya) dan paperless.

Virtualisasi

APA ITU VIRTUALISASI
Virtualisasi bisa diartikan sebagai pembuatan suatu bentuk atau versi virtual dari sesuatu yang bersifat fisik, misalnya sistem operasi,  perangkat storage/penyimpanan data atau sumber daya jaringan.

Virtualisasi bisa diimplementasikan kedalam berbagai bentuk, antara lain (Harry Sufehmi, Pengenalan Virtualisasi, 20090607) :

  1. Network Virtualization : VLAN, Virtual IP (untclustering), Multilink
  2. Memory Virtualization : pooling memory dari node-node di cluster
  3. Grid Computing : banyak komputer = satu
  4. Application Virtualization : Dosemu, Wine
  5. Storage Virtualization : RAID, LVM
  6. Platform Virtualization : virtual computer

KEUNTUNGAN PENGGUNAAN VIRTUALISASI

  1. Pengurangan Biaya Investasi Hardware. Investasi hardware dapat ditekan lebih rendah karena virtualisasi hanya mendayagunakan kapasitas yang sudah ada. Tak perlu ada penambahan perangkat komputer, server dan pheriperal secara fisik. Kalaupun ada penambahan kapasitas harddisk dan memori, itu lebih ditujukan untuk mendukung stabilitas kerja komputer induk, yang jika dihitung secara finansial, masih jauh lebih hemat dibandingkan investasi hardware baru.
  2. Kemudahan Backup & Recovery. Server-server yang dijalankan didalam sebuah mesin virtual dapat disimpan dalam 1 buah image yang berisi seluruh konfigurasi sistem. Jika satu saat server tersebut crash, kita tidak perlu melakukan instalasi dan konfigurasi ulang. Cukup mengambil salinan image yang sudah disimpan, merestore data hasil backup terakhir dan server berjalan seperti sedia kala. Hemat waktu, tenaga dan sumber daya.
  3. Kemudahan Deployment. Server virtual dapat dikloning sebanyak mungkin dan dapat dijalankan pada mesin lain dengan mengubah sedikit konfigurasi. Mengurangi beban kerja para staff IT dan mempercepat proses implementasi suatu sistem
  4. Mengurangi Panas. Berkurangnya jumlah perangkat otomatis mengurangi panasnya ruang server/data center. Ini akan berimbas pada pengurangan biaya pendinginan/AC dan pada akhirnya mengurangi biaya penggunaan listrik
  5. Mengurangi Biaya Space. Semakin sedikit jumlah server berarti semakin sedikit pula ruang untuk menyimpan perangkat. Jika server ditempatkan pada suatu co-location server/data center, ini akan berimbas pada pengurangan biaya sewa
  6. Kemudahan Maintenance & Pengelolaan. Jumlah server yang lebih sedikit otomatis akan mengurangi waktu dan biaya untuk mengelola. Jumlah server yang lebih sedikit juga berarti lebih sedikit jumlah server yang harus ditangani
  7. Standarisasi Hardware. Virtualisasi melakukan emulasi dan enkapsulasi hardware sehingga proses pengenalan dan pemindahan suatu spesifikasi hardware tertentu tidak menjadi masalah. Sistem tidak perlu melakukan deteksi ulang hardware sebagaimana instalasi pada sistem/komputer fisik
  8. Kemudahan Replacement. Proses penggantian dan upgrade spesifikasi server lebih mudah dilakukan. Jika server induk sudah overload dan spesifikasinya tidak mencukupi lagi, kita bisa dengan mudah melakukan upgrade spesifikasi atau memindahkan virtual machine ke server lain yang lebih powerful

 

KERUGIAN PENGGUNAAN VIRTUALISASI

  1. Satu Pusat Masalah. Virtualisasi bisa dianalogikan dengan menempatkan semua telur didalam 1 keranjang. Ini artinya jika server induk bermasalah, semua sistem virtual machine didalamnya tidak bisa digunakan. Hal ini bisa diantisipasi dengan menyediakan fasilitas backup secara otomatis dan periodik atau dengan menerapkan prinsip fail over/clustering
  2. Spesifikasi Hardware. Virtualisasi membutuhkan spesifikasi server yang lebih tinggi untuk menjalankan server induk dan mesin virtual didalamnya
  3. Satu Pusat Serangan. Penempatan semua server dalam satu komputer akan menjadikannya sebagai target serangan. Jika hacker mampu menerobos masuk kedalam sistem induk, ada kemungkinan ia mampu menyusup kedalam server- server virtual dengan cara menggunakan informasi yang ada pada server induk.

 

 

sumber : excellent.co.id

sum

Electronic Data Interchange

Kali ini saya akan menjelaskan tentang EDI atau bisa disebut dengan Electronic Data Interchage.

Pengertian

EDI adalah Transmisi data dalam bentuk yang terstruktur dan dapat dibaca mesin secara langsung dari komputer ke komputer di antara beberapa perusahan. Electronic Data Interchange (EDI) didefinisikan sebagai pertukaran data komputer antar berbagai bidang organisasi atas suatu informasi terstruktur dalam format yang standar dan bisa diolah oleh komputer. EDI merupakan bentuk e-commerce sesuai definisinya, dan telah ada bentuk yang sama selama lebih dari 20 tahun. Saat ini teknologi dan implementasi EDI sudah sangat berkembang.

ILUSTRASI

Pengertian-Electronic-Data-Interchange
TINGKAT PENERAPAN EDI
  • Pemakai tingkat satu : hanya 1 atau 2 set transaksi yang ditransmisikan ke sejumlah besar mitra  dagang yang terbatas.

 

  • Pemakai tingkat dua : Banyak set transaksi yang ditransmisikan ke sejumlah besar mitra dagang

 

  • Pemakai tingkat tiga : Selain banyak set transaksi yang transmisikan tetapi aplikasi komputrer perusahaan disesuaikan dengan pendekatan EDI

 

MANFAAT EDI

  • Mengurangi kesalahan
  • Mengurangi biaya
  • Meningkatkan efisiensi operasional
  • Meningkatkan kemampuan bersaing
  • Meningkatkan hubungan dengan mitra dagang
  • Meningkatkan pelayanan pelanggan

 

TUJUAN

Tujuan Electronic Data Interchange (EDI) adalah untuk memfasilitasi perdagangan dengan cara mengikat bisnis antar partner dagang, EDI meningkatkan proses manual untuk mempertukarkan informasi dengan bidang bisnis lainnya dalam berbagai cara, misalnya data hanya perlu untuk dimasukkan satu kali saja, kemudian data tersebut bisa digunakan oleh pihak pengirim barang, manager kantor, dan lain-lainnya. Hal ini akan menurangi tenaga entry data. Pada dasarnya, data bisa dikirimkan dengan lebih efisien dengan menggunakan EDI.

 

sumber : (sistem-informasi)

 

(SEO) Search Engine Optimization

Pengertian

SEO adalah singkatan dari Search Engine Optimization yang merupakan suatu teknik untuk optimasi dan memaksimalkan nilai relevan halaman website agar meningkatnya ranking kata kunci yang diiringi dengan meningkatnya pengunjung dari Search Engine Google. SEO dilakukan melalui proses yang sistematis (analisa, implementasi, report) yang artinya melakukan Teknik SEO yang masuk dalam kategori Blackhat SEO / Whitehat SEO / Greyhat SEO. Setiap teknik memiliki kelebihan dan kelemahan bila kita jalankan.

Seperti Blackhat SEO yang melakukan tindakan berbahaya dengan tujuan mempercepat peringkat sebuah website di pencarian Search Engine, namun memiliki dampak yang berbahaya. Whitehat SEO merupakan tindakan natural dan relevan dalam meningkatkan peringkat sebuah website dan teknik ini yang harus dilakukan. Greyhat SEO merupakan perpaduan kedua teknik sebelumnya untuk meningkatkan peringkat website. Untuk Greyhat SEO memang kombinasi 50% namun juga memiliki dampak yang berbahaya bagi website Anda. SEO yang merupakan singkatan dari “Search Engine Optimization” atau Optimisasi Mesin Pencari. SEO pertama kali digunakan pada 26 Juli 1997 oleh sebuah pesan SPAM yang di posting di Usenet [W].

 

Manfaat SEO

Setelah mengetahui apa itu SEO, maka sekarang akan membahas manfaat SEO bagi pemilik website. Teknik SEO sebenarnya banyak memberikan dampak positif bagi para pemilik website atau blog. Dampaknya sendiri tergantung dari tujuan website itu sendiri, seperti contohnya website affiliate ditambah dengan teknik SEO maka akan meningkatkan penjualan produk affiliate. Adapula website jualan online dipadukan dengan SEO maka pengunjung meningkat, sama dengan penjualan akan semakin meningkat, dan konsumen akan terus kembali ke website anda (Sistem Kepercayaan)
Lainnya anda dapat melihat website berita atau blog informasi tips, trik, tutorial bila ditambah dengan SEO maka pengunjung website akan lebih tertarget dan website semakin meningkat aktifitas pengunjungnya. Berikut manfaat lainnya bila SEO digabung dengan website atau blog:

  • Website menjadi ramai dengan pengunjung tertarget kata kunci
  • Pelanggan terus berdatangan ke website
  • Secara tidak langsung meningkatkan pendapatan anda sebagai Publisher
  • Cache penulusuran di Search Engine menjadi yang paling utama
  • Bisnis di dalam website menjadi berkembang
  • Penjualan produk akan semakin meningkat
  • Adanya timbal balik ke website affiliate produk
  • dan lainnya

Sebenarnya ada banyak sekali hal yang didapat bila anda mengembangkan website atau blog ditambah dengan Teknik SEO. Bila sepenggal artikel Pengertian SEO masih terasa kurang, berikut ini link referensi Pengertian SEO.

 

Kelebihan dan Kekurangan Non-SEO VS SEO

Berikut adalah tabel lengkap perbandingan Non-SEO vs SEO

 

Kelebihan masing-masing :
Kekurangan masing-masing :

Kesimpulan

Berikut kesimpulan mengenai apa itu SEO:

  1. SEO merupakan proses membuat situs web atau halaman web Anda berada pada halaman pertama di SERP berdasarkan kata kunci yang ditargetkan. SEO juga bisa berarti profesi dan penerang kata benda.
  1. SEO merupakan sebuah bidang atau bagian dari internet marketing. Bidang internet marketing lain yang utama adalah iklan Pay-Per-Click (PPC) dan sosial media. Dan bidang internet marketing lainnya adalah Web Analytics, Conversion Rate Optimization (CRO), mobile marketing, content marketing, dan display marketing.
  1. Istilah-istilah umum dalam SEOmisalnya kata kunci (keyword), halaman hasil mesin pencari / search engine result page (SERP), posisi atau peringkat (ranking), lalu-lintas kunjungan ke situs (traffic), alami (natural), berbayar dan tidak-berbayar (paid dannon-paid), organik dan non-organik (organic dan non-organic), optimisasi (optimization).
  1. SEO adalah hasil pencarian utama dan non-SEO adalah hasil pencarian tambahan atau sementara (walaupun keuntungan Google bisa dikatakan adalah dari non-SEO yang berbayar).
  1. Tidak ada “SEO non-organik” karena semua SEO adalah organik atau alami (tumbuh dan berkembang dari kecil menjadi besar).
  1. SEO memiliki tujuan dasar, tujuan utama, manfaat, dan keuntungan yang bernilai tinggi. Keberhasilan SEO diukur dengan rasio Total Biaya SEO / Total Keuntungan SEO. Jika nilai rasio keberhasilan SEO ini di bawah 1, berarti aktifitas SEO-nya belum optimal.
  1. Mesin pencari web atau sering disebut mesin pencari (search engine) adalah program komputer yang digunakan untuk mencari informasi dari dokumen-dokumen yang tersedia di web. Contoh mesin pencari utama adalah Google, Yahoo, Bing, Yandex, dan Baidu.
  1. Jenis penargetan SEO bisa berupa pencarian web, gambar, video, berita, lokal, dan akademik. Tersedia juga operator pencarian tingkat lanjut untuk berbagai mesin pencari utama.
  1. Jenis-jenis optimisasi pada SEO yang utama adalah:
    • Optimisasi Halaman (SEO On-Page)
    • Optimisasi Luar-Situs (SEO Off-Site)

Sedangkan optimisasi SEO lainnya adalah Optimisasi Domain dan Optimisasi Kata kunci dan Faktor Lainnya.

  1. Strategi terbaik mengerjakan proses-proses SEO adalah dengan menggunakanpendekatan manajemen proyek untuk SEO, atau kalau tidak, harus melakukan optimisasi-optimisasi SEO standar (KW research, analisis kompetitor, SEO on-page, SEO off-page, dan seterusnya) secara teliti dan terencana.

 

sumber : https://semseomanagement.com/apa-itu-seo/

E-BUSINESS Dan E-COMMERCE

e-commerce-websites

Kali ini saya akan membahas tentang E-Business dan E-Commerce. E-Business memungkinkan transaksi dan proses dalam perusahan secara digital, melibatkan sistem informasi di bawah kontrol perusahaan. E-Business tidak termasuk transaksi komersial yang melibatkan pertukaran nilai melintasi batas-batas organisasi. E-Business mencakup seluruh kegiatan / usaha yang dilakukan dengan bantuan media digital / elektronik.

E-business berkaitan secara menyeluruh dengan proses bisnis termasuk value chain: pembelian secara elektronik (electronic purchasing), manajemen rantai suplai (supply chain management), pemrosesan order elektronik, penanganan dan pelayanan kepada pelanggan, dan kerja sama dengan mitra bisnis. E-business memberi kemungkinan untuk pertukaran data di antara satu perusahaan dengan perusahaan lain, baik lewat web, Internet, intranet, extranet atau kombinasi di antaranya.

Sedangkan E-Commerce adalah kegiatan komersial dengan penyebaran, pembelian, penjualan, pemasaran barang dan jasa melalui sistem elektronik seperti internet atau televisi, www, atau jaringan komputer lainnya. E-commerce dapat melibatkan transfer dana elektronik, pertukaran data elektronik, sistem manajemen inventori otomatis, dan sistem pengumpulan data otomatis.

Kegiatan e-commerce ini sebagai aplikasi dan penerapan dari e-bisnis (e-business) yang berkaitan dengan transaksi komersial, seperti: transfer dana secara elektronik, SCM (supply chain management), e-pemasaran (e-marketing), atau pemasaran online (online marketing), pemrosesan transaksi online (online transaction processing), pertukaran data elektronik (electronic data interchange /EDI), dll.

 

PERBEDAAN

Perbedaan yang mendasar antara e-commerce dan e-business adalah bahwa tujuan e-commerce memang benar-benar money oriented (berorientasi pada perolehan uang), sedangkan e-business berorientasi pada kepentingan jangka panjang yang sifatnya abstrak seperti kepercayaan konsumen, pelayanan terhadap konsumen, peraturan kerja, relasi antar mitra bisnis, dan penanganan masalah sosial lainnya.

 

Manfaat E-commerce

Ada beberapa manfaat e-commerce, yaitu:

  • Mempermudah komunikasi antara produsen dan konsumen.
  • Mempermudah pemasaran dan promosi barang atau jasa.
  • Memperluas jangkauan calon konsumen dengan pasar yang luas.
  • Mempermudah proses penjualan dan pembelian.
  • Mempermudah pembayaran karena dapat dilakukan secara online.
  • Mempermudah penyebaran informasi.

 

Keuntungan E-commerce

Ada banyak keuntungan yang didapatkan dari e-commerce. Salah satunya adalah menjual produk atau jasa secara online tanpa harus mendirikan tooko atau kantor besar seperti yang dilakukan oleh para pelaku bisnis offline sebagai tempat usaha. Hanya dengan memanfaatkan jaringan internet, Anda sudah bisa memasarkan produk atau jasa kepada konsumen kapanpin dan di manapun.

Keuntungan lainnya adalah kemudahan berkomunikasi antara penjual dan pembeli. Dari segi pemaaran barang juga jauh lebih menguntungan karena Anda tidak perlu mengeluarkan biaya tinggi untuk melakkan promosi. Hanya dengan menggunakan jaringan internet, Anda sudah bisa memasarkan produk atau jasa Anda secara meluas ke masyarakat.

Demikian ulasan mengenai e-commerce, manfaat dan keuntungannya. Bisnis e-commerce adalah salah satu bisnis yang menjanjikan sehingga Anda tidak perlu ragu untuk mencobanya. Jika Anda sudah memiliki rencana untuk membangun toko online, tapi tidak tahu bagaimana memulainya, Anda bisa mengandalkan jasa e-commerce enabler seperti 8commerce. 8commerce adalah end-to-end e-commerce enabler Indonesia, mulai dari pengembangan e-commerce dan sistemnya, pemasaran digital, logistik, dan e-commerce fulfillment.

Manfaat e-business

Bagi perusahaan

– Memperluas pasar hingga mancakup pasar nasional dan pasar global

– Menekan biaya penyusunan, memproses, mendistribusikan, meyimpanan dan mengakses informasi berbasis kertas

– Menekan waktu antara pembayaran dan penerimaan prpduk/jasa.

– Memperpendek jarak

– Efisien

– Perluasan jaringa mitra

– Cash flow terjamin

Bagi konsumen

– Memungkin konsumen berbelanja atau melakukan transaksi lainny setiap saat (24 jam sehari) dan dimana saja

– Memberikan pilihan produk dan pemasok yang lebih banyak kepada pelanggan.

– Memungkinkan konsumen dalam mendapatkan produk atau jasa yang lebih murah.

– Memungkinkan pelanggan berinteraksi dengan pelanggan lainnya dalan electronic communities dan saling bertukar  gagasan serta pengalaman.

– Memfasilitasi kompetisi yang mengarah pada diskon subtansional bagi pelanggannya.

Bagi masyarakat

– Memungkinkan lebih banyak orang bekerja di rumah dan jarang berpergian untuk belanja, sehingga kemacetan dan populasi udara berkurang.

– Memungkinkan beberapa jenis barang dijual dengan harga murah, sehingga harga terjangkau.

– Memungkinkan masyarakat di Negara berkembang dan kawasan perdalaman menikmati produk dan jasa relative langka di tempat tinggalnya atau jarak yang jauh untuk memperolehnya.

– Peluang kerja baru

Bagi dunia akademis

– Tantangan baru

– Para peneliti tertantang untuk melakukan analisis terhadap pergeseran pola bisnis

– Membuka kerangka baru dalam penjualan jasa pendidikan.

 

Kesimpulannya dari semua yang telah dijelaskan dibagian atas tersebut manfaat dan keuntungan yang didapatkan dari E-COMMERCE adalah sebagai berikut :
1.       Bagi Konsumen : harga lebih murah, belanja cukup pada satu tempat.
2.       Bagi Pengelola bisnis : efisiensi, tampa kesalahan, tepat waktu.
3.       Bagi Manajemen : peningkatan pendapatan, loyalitas pelanggan.