Makalah Pemrosesan Paralel - Just A Dreams

Latest

Thanks For Attention My Blog :) Welcome To My Blog :)

Selasa, 01 Agustus 2017

Makalah Pemrosesan Paralel



Pendahuluan
Pemrosesan paralel (parallel processing) adalah penggunaan 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 berbeda-beda tanpa berkaitan di antaranya.
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
* 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. Parallel processing berbeda dengan multitasking, yaitu satu CPU mengeksekusi beberapa program sekaligus. Parallel processing disebut juga parallel computing.
Komputasi paralel merupakan salah satu teknologi paling menarik yang penting sejak ditemukannya komputer elektronik pada tahun 1940- an. Terobosan dalam pemrosesan paralel selalu berkembang dan mendapatkan tempat disamping teknologi-teknologi lainnya sejak Era Kebangkitan (1950-an), Era Mainframe (1960-an), Era Minis (1970-an), Era PC (1980-an), dan Era Komputer Paralel (1990-an). Dengan berbagai pengaruh atas perkembangan teknologi lainnya, dan bagaimana teknologi ini mengubah persepsi terhadap komputer, dapat dimengerti betapa pentingnya komputasi paralel itu. Inti dari komputasi paralel yaitu hardware,software, dan aplikasinya.
Paralel Prosesing merupakan suatu pemrosesan informasi yang lebih mendekatkan pada manipulasi rata-rata dari elemen data terhadap satu atau lebih penyelesaian proses dari sebuah masalah. Oleh karena itu komputasi paralel dapat diartikan bahwa komputer dengan banyak prosesor yang mampu untuk melakukan paralel prosesing.
Cluster Computing adalah suatu sistem perangkat keras dan perangkat lunak yang menggabungkan beberapa komputer dalam suatu jaringan dimana komputer-komputer tersebut dapat bekerja sama dalam pemrosesan suatu masalah. Cluster Computing  merupakan salah satu dari penerapan sistem pararel, dan makalah ini akan membahas tentang cluster computing tersebut.


Cluster Computing

A.    Sejarah Cluster Computing

Salah satu solusi dari masalah kurangnya daya komputasi adalah dengan menjalankan aplikasi pada sejumlah komputer individual yang terhubung ke jaringan. Cara ini dalam terminologi teknis dikenal sebagai clustering. Teknik yang pertama kali dikembangkan pada awal era 1980-an ini, sekarang telah diaplikasikan pada berbagai pusat superkomputer, laboratorium riset, dan industri. Superkomputer tercepat di dunia saat ini terdiri dari sekumpulan mikroprosesor, sebagai contoh, sistem ASCI White di Lawrence Livermore National Laboratory, California, tersusun atas 8000 prosesor. Banyak diantara laboratorium riset yang menjalankan PC sederhana yang membentuk cluster untuk melakukan perhitungan dan analisis data. Teknik ini hanya memerlukan ongkos sebesar kurang dari 1 USD per megaflop tiap detiknya dengan cluster komputer jenis Pentium III, sebuah ongkos yang sangat murah, khususnya apabila dibandingkan dengan superkomputer yang harganya bisa mencapai jutaan dolar itu. Kemajuan ini juga tidak lepas dari dikembangkannya algoritma khusus yang dapat mengeksploitasi penggunaan ribuan prosesor secara efektif. Walaupun clustering dapat menyediakan peningkatan daya komputasi secara signifikan, sebuah cluster membutuhkan fasilitas khusus dengan dibangun diatas sebuah lokasi tunggal. Ini memunculkan persoalan seberapa besar ruang yang dapat disediakan untuk menampung sekian banyak komputer yang bekerja secara bersamaan itu. Hal ini memunculkan persoalan baru dimana dibutuhkan investasi ekstra untuk membangun gedung-gedung baru, khusus sebagai lokasi cluster. Kemajuan teknologi komunikasi menawarkan solusi berupa pendekatan desentralisasi untuk mengatasi kebutuhan akan daya komputasi yang lebih tinggi dengan ongkos yang rasional. Terdapat lebih dari 400 juta PC di seluruh dunia, dengan banyak diantaranya memiliki daya komputasi setara dengan superkomputer pada era awal 1980-an. Sebagian besar diantaranya memiliki banyak waktu idle (menganggur) saat digunakan.
Setiap institusi besar memiliki ratusan hingga ribuan sistem semacam ini. Sebuah pendekatan yang disebut internet computing merupakan jawaban untuk memanfaatkan workstation dan PC untuk menciptakan sistem komputasi terdistribusi (distributed computing systems) berjangkauan global dengan kapabilitas setara dengan superkomputer. Kesempatan yang ditawarkan oleh komputer yang berada dalam kondisi idle telah diketahui sejak lama. Pada tahun 1985, Miron Livny menunjukkan bahwa sebagian besar workstation senantiasa berada dalam kondisi idle. Ia mulai merancang sebuah sistem untuk memanfaatkan kondisi itu untuk sesuatu yang lebih bermanfaat. Dengan memanfaatkan kemampuan multitasking dari sistem operasi Unix dan koneksi ke jaringan internet, Livny mengembangkan aplikasi yang disebut Condor yang kini dimanfaatkan secara luas oleh kalangan akademis untuk melakukan analisis data dan pemecahan problem matematis. Walapun Condor terhitung efektif untuk skala kecil, penggunaan internet computing secara masal harus menunggu lebih lama bagi tersedianya PC yang lebih cepat dan meluasnya penggunaan internet. Pada 1997, Scott Kurowski membangun jaringan yang disebut Entropia dengan fungsi yang serupa: memanfaatkan kodisi idle pada komputer yang terhubung dalam jaringan untuk kepentingan aplikasi saintifik. Hanya dalam waktu dua tahun, jaringan ini berkembang, meliputi lebih dari 30.000 komputer dengan akumulasi kecepatan diatas satu teraflop per detik. Salah satu pencapaian dari jaringan ini adalah ditemukannya bilangan prima yang terbesar. Loncatan berikutnya dari internet computing adalah diluncurkannya proyek SETI@home oleh David Anderson. Proyek ini bertujuan untuk melakukan analisis data yang diterima oleh teleskop radio Arecibo untuk mencari sinyal-sinyal yang mungkin dikirimkan oleh mahluk cerdas berperadaban dari luar Bumi. Gabungan antara rasa ingin tahu publik dan kemajuan teknologi menyebabkan proyek ini terus berkembang. Berjalan diatas setengah juta PC, proyek SETI@home kini menjelma menjadi komputer tercepat di dunia yang dibangun untuk keperluan khusus. Apa artinya fenomena ini bagi ilmu pengetahuan dan para ilmuwan? Secara simplistik dapat dikatakan bahwa para ilmuwan kini memperloleh akses bagi sumber daya komputasi yang luar biasa. Apa yang dibutuhkan hanyalah memasukkan problem komputasi dalam sebuah bentuk yang cocok untuk dijalankan pada komputer deskop, dan kemudian melakukan pendekatan pada publik tentang seberapa pentingnya solusi untuk sebuah masalah. Sekali publik dapat diyakinkan, maka selanjutnya bantuan berupa sumber daya komputasi akan segera mengalir dengan sendirinya.


B.     Definisi Cluster Computing

Cluster Computing adalah teknik menghubungkan dua atau lebih komputer ke dalam jaringan (biasanya melalui jaringan area lokal) dalam rangka mengambil keuntungan dari kekuatan pemrosesan paralel dimana komputer-komputer tersebut dapat bekerja sama dalam pemrosesan suatu masalah.
Dalam perebutan yang terus menerusdi setiap departemen IT ditemukan sebuah metode untuk menekan kekuatan pemrosesan maksimum dari anggaran yang terbatas. Saat ini lebih dari sebelumnya, perusahaan memerlukan kekuatan pemrosesan yang sangat besar untuk mengelola aplikasi desktop mereka, database dan manajemen pengetahuan. proses bisnis Banyak pengguna sangat berat sumber daya TI, namun anggaran TI berjuang untuk tetap berpacu dengan permintaan yang semakin berkembang untuk daya lebih banyak lagi.
Cluster terbagi kedalam 2 (dua) kelas, yaitu:
- Class I Cluster yang dibangun menggunakan hardware/software umum yang ada dipasaran, dengan teknologi standar seperti IDE, SCSI, dan Ethernet.
- Class II Cluster berbiaya tinggi, yang dibangun menggunakan hardware khusus berkecepatan tinggi, untuk mencapai tingkat performa terbaik.

C.     Konsep Dasar Cluster Computing

                Berikut ini adalah sebuah gambaran tentang konsep dasar dari Cluster Computing


 

 


Gambar 1. Konsep dasar Cluster Computing




Hardware yang dibutuhkan untuk masing-masing server adalah sebagai berikut :


 







Gambar 2. Requirement phriphreal per Server
Berikut ini adalah contoh implementasi Clustering Server untuk Cluster DCSERVER ( Domain Controller Server ), FILESERVER, DBSERVER ( Oracle RAC ), WebServer, dll
Gambar 3. Implementasi Clustering Server
Sedangkan contoh implementasi-nya pada Data Center adalah seperti gambar dibawah ini:






Gambar 4. Implementasi Data Center pada Clustering Server
D.    Keterbatasan TI

Sayangnya, meskipun beberapa dari perusahaan terbesar membutuhkan kekuatan pemrosesan superkomputer, beberapa perusahaan bisa gemerisik Facebook anggaran superkomputer berukuran TI. Meskipun telah ada kemajuan yang signifikan dalam komputasi mainframe dalam beberapa tahun terakhir, investasi dalam sumber tunggal yang besar dari kekuatan pemrosesan dapat menjadi solusi yang paling efektif-biaya atau fleksibel. Sebaliknya, banyak perusahaan yang kini memilih untuk menginvestasikan anggaran TI mereka dalam kelompok komputer - jaringan bertenaga tinggi, komputer desktop murah - yang memberikan alternatif yang menarik untuk komputer mainframe.


E.     Jenis Cluster Komputer

           Ada beberapa varietas yang berbeda cluster komputer, masing-masing menawarkan keunggulan yang berbeda kepada pengguna. Varietas tersebut adalah:
* Cluster Ketersediaan Tinggi
              HA Cluster dirancang untuk menjamin akses konstan untuk aplikasi layanan. Cluster dirancang untuk mempertahankan node berlebihan yang dapat bertindak sebagai sistem cadangan jika terjadi kegagalan. Jumlah minimum dari node dalam sebuah cluster HA adalah 2-1 aktif dan satu berlebihan - meskipun sebagian besar HA cluster akan menggunakan node jauh lebih.
HA cluster bertujuan untuk memecahkan masalah yang timbul dari kegagalan mainframe dalam suatu perusahaan. Daripada kehilangan semua akses ke sistem IT, HA cluster memastikan 24 / 7 akses ke kekuasaan komputasi. Fitur ini sangat penting dalam bisnis, di mana pengolahan data biasanya waktu-sensitif.
* Load-balancing Cluster
            Load-balancing cluster beroperasi dengan routing semua pekerjaan melalui satu atau lebih front-end node load-balancing, yang kemudian mendistribusikan beban kerja secara efisien antara node aktif yang tersisa. Load-balancing cluster sangat berguna bagi mereka yang bekerja dengan anggaran TI yang terbatas. Mencurahkan beberapa node untuk mengelola alur kerja sebuah cluster memastikan bahwa kemampuan pemrosesan yang terbatas dapat dioptimalkan.
* High-performance Cluster
           HPC cluster dirancang untuk mengeksploitasi kekuatan pemrosesan paralel dari beberapa node. Mereka yang paling sering digunakan untuk melakukan fungsi yang membutuhkan node untuk berkomunikasi karena mereka melakukan tugas-tugas mereka - misalnya, ketika perhitungan hasil dari satu simpul akan mempengaruhi hasil di masa depan dari yang lain.
          Cluster HPC paling terkenal adalah Berkeley Seti @ Home Project, sebuah cluster HPC yang terdiri dari lebih dari 5 juta komputer relawan rumah mengabdikan daya proses untuk analisis data dari teleskop radio Arecibo Observatory.
Komponen yang terdapat pada cluster computer :
- Node, sistem cluster terdiri dari beberapa node. Paling sederhana terdiri dari dua node. Node disini adalah komputer yang mandiri, artinya mampu memproses tugas komputasi tanpa node lain.
- Sistem operasi, harus mendukung jaringan computer
- Cluste middleware, perangkat lunak yang memungkinkan node yang ada saling bekerja sama
- Aplikasi yang mendukung pemindahan tugas (biasanya pada high performance cluster, menggunakan pustaka Message Passing Interface atau Paralel Virtual Machine)

F.      Manfaat Cluster Komputer

          Komputer cluster menawarkan sejumlah manfaat lebih dari komputer mainframe, termasuk:
1. Mengurangi Biaya
: Harga desktop konsumen off-rak-telah merosot dalam beberapa tahun terakhir, dan hal ini penurunan harga telah sesuai dengan peningkatan besar dalam kekuatan pemrosesan dan kinerja mereka. Desktop hari ini rata-rata PC berkali-kali lebih kuat daripada komputer mainframe pertama.

2. Pengolahan Power: Kekuatan pemrosesan paralel dari cluster kinerja tinggi, dalam banyak kasus, terbukti biaya lebih efektif daripada mainframe dengan kekuatan yang sama. Harga yang lebih rendah per unit daya memungkinkan perusahaan untuk mendapatkan ROI yang lebih besar dari anggaran TI mereka.
3. Peningkatan Jaringan Teknologi: Driving pengembangan cluster komputer telah kemajuan besar dalam teknologi yang berhubungan dengan jaringan, bersama dengan penurunan harga teknologi tersebut. Cluster komputer biasanya terhubung melalui jaringan area tunggal virtual lokal (VLAN), dan jaringan memperlakukan setiap komputer sebagai node yang terpisah. Informasi dapat melewati seluruh jaringan-jaringan dengan lag sangat sedikit, memastikan bahwa data tidak bottleneck antara node.
4. Skalabilitas: Mungkin keuntungan terbesar dari cluster komputer adalah skalabilitas yang mereka tawarkan. Sementara komputer mainframe memiliki kapasitas pengolahan tetap, cluster komputer dapat dengan mudah diperluas sebagai perubahan persyaratan dengan menambahkan node tambahan ke jaringan.
5. Ketersediaan: Ketika komputer mainframe gagal, seluruh sistem gagal. Namun, jika sebuah node dalam sebuah cluster komputer gagal, operasinya bisa dengan sederhana ditransfer ke node lain dalam cluster ini, memastikan bahwa tidak ada gangguan dalam pelayanan.

     G.  Perbedaan Clustering Server System dan Mirroring Server System
Clustering Server System
- Hardware Server tidak harus Identik ( baik Merk, Type maupun Spek Server yang digunakan ).
- Jika terjadi FAILOVER, Cluster Server bisa melakukan TAKEOVER Server System tanpa intervensi dari Administrator atau Server Operator.
- Clustering Server membutuhkan SHARED Storage berupa SAN, NAS, FreeNAS, External harddisk dual Firewire dan semacamnya. Dalam tanda kutip bahwa Clustering HARUS pake Shared Storage.
- Clustering Server minimal dibangun diatas 2 buah NODE Server ( bahkan hingga ratusan server ) dan sebuah SHARED STORAGE, selanjutnya kita bisa menambah jumlah NODE Server sesuai kebutuhan perusahaan.
Mirroring Server System
- Hardware Server harus Identik ( baik Merk, Type maupun Spek Server yang digunakan ).
- Jika terjadi FAILOVER, Mirror Server bisa melakukan TAKEOVER Server System dengan intervensi atau action dari Administrator atau Server Operator. Untuk menjalankan Script yang sudah disiapkan ataupun melakukan konfigurasi secara manual ( pengalihan fungsi server dari MIRROR A ke MIRROR B ).
- Mirror Server tidak harus membutuhkan SHARED Storage btapi bisa juga mengunakannya sebagai Optional saja. Dalam tanda kutip bahwa Clustering tidak harus memakai Shared Storage.
- Mirror Server umumnya dibangun diatas 2 buah NODE Server yang identik

     H.  Kelemahan dan Keunggulan Cluster Computing
1.    Keunggulan
·       lebih fleksibel (dapat upgrade sesuai dengan kemampuan)
·      Tidak diperlukan sistem pendingin khusus
·      lebih murah

2.    Kelemahan
Node-node cluster tersebut terpisah maka akan ada delay waktu untuk transfer data diantara node. Dan membuat program di cluster tentu beda dengan membuat program pada satu komputer. Anda harus bisa memecah pekerjaan supaya terdistribusi secara baik diantara node, dll.
Simak
Baca secara fonetik
Simak
Baca secara fonetik




Kesimpulan

1.    Cluster merupakan salah satu solusi untuk melakukan komputasi dalam jumlah yang besar
2.    Cluster Computing adalah suatu sistem perangkat keras dan perangkat lunak yang menggabungkan beberapa komputer dalam suatu jaringan dimana komputer-komputer tersebut dapat bekerja sama dalam pemrosesan suatu masalah.


























Daftar Pustaka

-          Yudha Arta, “Analisa Kinerja Pararel Computing Dengan  Menggunakan Perhitungan Hukum Amdahl berbasiskan Linux”, Jurnal Informasi & Pendidikan Vol. 6 NO. 2 September 2013




1 komentar:

  1. Why is slot machines rigged? - Casino Profiles777
    What is 넷텔러 the easiest 벳익스플로어 way to play slots on slots machines? When playing 샌즈 a casino game 윌리엄힐 online for free, you 카카오 스포츠 will always find

    BalasHapus