Nama Kelompok :
- Alif Nurrifqi (50412638)
- Andre Revanska (50412815)
- Bezaleel Hutasoit (51412444)
- Riki Apriadi (56412375)
Kelas : 4IA23
Dosen : Dr. Rina Noviana, SKom,. MMSI
Mata Kuliah : Pengantar Komputasi Modern
Parallel Computation
Parallel computing
adalah jenis perhitungan di mana banyak perhitungan dilakukan secara bersamaan,
yang pada prinsip bahwa masalah besar sering dibagi menjadi lebih kecil, yang
kemudian pada waktu yang sama untuk diselesaikan. Ada berbagai bentuk komputasi
paralel: bit-tingkat, tingkat instruksi, data, dan tugas paralelisme.
Paralelisme telah digunakan selama bertahun-tahun, terutama dalam komputasi
kinerja tinggi, namun bunga telah berkembang akhir-akhir ini karena kendala
fisik mencegah penskalaan frekuensi. Jika konsumsi arus (dan panas) oleh
komputer telah menjadi perhatian dalam beberapa tahun terakhir komputasi
paralel, paradigma dominan dalam arsitektur komputer, terutama dalam bentuk
prosesor multi-core.
Komputasi
paralel berkaitan erat dengan paralel komputasi, mereka sering digunakan
bersama-sama dan sering digabungkan, tetapi keduanya berbeda: itu adalah
paralelisme mungkin tanpa concurrency (seperti bit paralelisme) dan
simultanitas tanpa paralelisme (seperti multitasking ditemukan oleh
waktu-berbagi satu CPU core). Dalam komputasi paralel, tugas komputasi biasanya
dibagi menjadi beberapa, sering banyak, sub-tugas yang sangat mirip yang dapat
diproses secara independen dan hasil yang kemudian dirakit setelah selesai.
Sebaliknya, dalam pemrograman terdistribusi, sering gagal untuk mengatasi
tugas-tugas yang berhubungan dengan berbagai proses; Ketika mereka lakukan,
seperti yang khas dalam komputasi terdistribusi, tugas individu dapat memiliki
sifat bervariasi dan sering membutuhkan sejumlah komunikasi antar-proses selama
pelaksanaan.
Komputer
paralel secara kasar dapat diklasifikasikan menurut tingkat di mana perangkat
keras mendukung paralelisme dengan komputer multi-core dan multi-prosesor
dengan beberapa elemen pemrosesan dalam satu mesin, sedangkan cluster, MPP, dan
grid menggunakan beberapa komputer untuk bekerja pada tugas yang sama. Khusus
arsitektur komputer paralel kadang-kadang digunakan selain prosesor
tradisional, untuk mempercepat tugas-tugas tertentu.
Dalam
beberapa kasus sejajar transparan untuk programmer, seperti di tingkat bit atau
instruksi paralelisme, tapi tegas algoritma paralel, menggunakan terutama
simultanitas mereka, lebih sulit untuk menulis daripada proses berurutan,
karena pengenalan simultanitas kelas baru kemungkinan kesalahan dalam perangkat
lunak, yang kondisi balapan adalah yang paling umum. Komunikasi dan
sinkronisasi antara sub-tugas yang berbeda biasanya beberapa kendala terbesar
untuk mendapatkan kinerja program paralel yang baik.
Sebuah batas atas
teoritis untuk percepatan program tunggal sebagai akibat dari paralelisasi
diberikan oleh hukum Amdahl.
Parallelism Concept
1. Single Instruction, Single Data
(SISD):
- Sebuah serial (non-paralel) komputer
- Single Instruction: Hanya satu instruksi aliran ditangani oleh CPU dalam satu siklus clock
- Single Data: Hanya satu aliran data yang digunakan sebagai bahan awal selama satu siklus clock tunggal
- Ini adalah jenis tertua dari komputer
- Contoh: mainframe generasi tua, minicomputer, workstation dan single-prosesor PC / inti.
2. Single Instruction, Multiple Data
(SIMD):
- Sebuah jenis komputer paralel
- Instruksi Single: untuk melaksanakan semua unit pengolahan instruksi yang sama pada setiap siklus clock yang diberikan
- Beberapa Data: Setiap unit pengolahan dapat bekerja pada elemen data lain
- Paling cocok untuk masalah-masalah khusus yang ditandai dengan tingkat tinggi keteraturan, seperti grafik / pengolahan gambar.
- Synchronous (berbaris) dan eksekusi deterministik
- Dua varian: Array Processor dan Vector Pipa
- Sebagian besar komputer modern, terutama mereka dengan unit pengolahan grafis (GPU) layanan SIMD instruksi dan eksekusi unit.
- contoh: Processor Array: Mesin Berpikir CM-2 MasPar MP-1 dan MP-2, ILLIAC IV
3. Multiple Instruction, Single Data
(MISD):
- Sebuah jenis komputer paralel
- Beberapa Instruksi: Setiap unit pengolahan beroperasi pada data independen melalui aliran instruksi terpisah.
- Single Data: Sebuah aliran data tunggal dimasukkan ke beberapa unit pengolahan.
- Sedikit (atau tidak) contoh konkret kelas ini masih ada komputer paralel.
- Beberapa aplikasi bisa dipertimbangkan: filter frekuensi yang berbeda yang aliran sinyal tunggal dan beberapa algoritma kriptografi mencoba untuk memecahkan kode pesan.
- Sebuah jenis komputer paralel
- Beberapa Instruksi: Setiap prosesor dapat melakukan streaming instruksi yang berbeda
- Data beberapa: Setiap prosesor dapat bekerja dengan aliran data yang berbeda
- Eksekusi bisa sinkron atau asynchronous, deterministik atau non-deterministik
- Saat ini, jenis yang paling umum dari komputer paralel - mayoritas superkomputer modern termasuk dalam kategori ini.
- Contoh: kebanyakan superkomputer saat ini, jaringan cluster komputer paralel dan "grid", komputer SMP multi-prosesor, PC multi-core.
Distibuted Processing
Model ini menunjukkan karakteristik
sebagai berikut:
- Satu set tugas yang menggunakan memori lokal mereka sendiri selama perhitungan. Beberapa tugas mungkin terletak pada mesin fisik yang sama dan / atau dalam jumlah mesin.
- Tugas bertukar data melalui komunikasi dengan mengirim dan menerima pesan.
- Transfer data biasanya memerlukan tindakan kooperatif dilakukan oleh setiap proses. Sebagai operasi send harus memiliki pencocokan yang menerima operasi.
- Dari perspektif pemrograman, lewat pesan implementasi biasanya terdiri perpustakaan subrutin. Panggilan ke subrutin ini tertanam dalam kode sumber. programmer bertanggung jawab untuk menentukan semua paralelisme.
- Secara historis, pesan lewat perpustakaan yang berbeda sejak 1980-an implementasi ini berbeda secara signifikan dari satu sama lain sehingga sulit untuk aplikasi programmer portabel.
- Pada tahun 1992, Forum MPI dibentuk dengan tujuan utama membangun antarmuka standar untuk implementasi pesan lewat.
- Bagian 1 dari Message Passing Interface (MPI) dirilis pada tahun 1994. Bagian 2 (MPI-2) dirilis pada tahun 1996 dan tiga pada tahun 2012. spesifikasi Semua MPI MPI yang tersedia di web di http: //www.mpi- forum.org/docs/.
- MPI adalah "de facto" standar untuk pesan lewat, menggantikan implementasi hampir semua pesan lainnya lewat untuk pekerjaan produksi. MPI implementasi ada untuk platform komputasi paralel hampir semua populer. Tidak semua implementasi terdiri segala sesuatu di MPI-1, 2, atau MPI-MPI-3.
Architectural Parallel Computer
1. Shared
Memory
- Memori bersama komputer paralel bervariasi, tetapi umumnya memiliki kesamaan kemampuan untuk semua prosesor untuk mengakses semua ruang alamat memori global.
- Beberapa prosesor dapat beroperasi secara independen tetapi berbagi sumber daya memori yang sama
- Perubahan lokasi memori yang diatur oleh prosesor diakses oleh semua prosesor lainnya
- Secara historis, mesin memori bersama diklasifikasikan sebagai UMA dan NUMA, berdasarkan waktu akses memori.
Karakteristik umum:
- Seperti sistem memori bersama, sistem memori terdistribusi bervariasi namun memiliki satu karakteristik umum. sistem memori terdistribusi perlu terhubung ke jaringan komunikasi pada memori antar-prosesor
- Prosesor memiliki memori lokal sendiri. alamat memori dalam satu prosesor tidak ditugaskan untuk prosesor lain, sehingga tidak ada konsep ruang alamat global untuk semua prosesor.
- Karena setiap prosesor memori lokal sendiri, yang bekerja secara independen. Perubahan yang memberikan ke memori lokal tidak berpengaruh pada memori prosesor lainnya. Oleh karena itu, konsep cache koherensi tidak berlaku.
- Ketika prosesor untuk mengakses data dalam prosesor lain yang diperlukan, biasanya tugas programmer untuk secara eksplisit menentukan bagaimana dan kapan data dikomunikasikan. Sinkronisasi antara tugas-tugas juga merupakan tanggung jawab dari programmer.
- Jaringan "debu" yang digunakan untuk transmisi data sangat bervariasi, meskipun dapat sesederhana Ethernet.
Karakteristik
umum:
- Yang terbesar dan tercepat komputer di dunia kerja baik bersama dan arsitektur memori terdistribusi hari ini.
- Komponen memori bersama adalah mesin memori bersama dan / atau Graphics Processing Unit (GPU) yang.
- Komponen memori terdistribusi adalah jaringan dari beberapa mesin memori / GPU bersama yang hanya sekitar memori mereka sendiri - bukan memori di komputer lain. Oleh karena itu, jaringan komunikasi diperlukan untuk mentransfer data dari satu komputer ke komputer lain.
- Tren saat ini menunjukkan bahwa jenis arsitektur memori akan terus menang dan meningkat pada ujung yang tinggi dari komputer di masa mendatang.
1. Menghemat waktu dan / atau uang:
- Secara teori, melemparkan lebih banyak sumber daya untuk tugas akan mempersingkat waktu untuk penyelesaian, dengan potensi penghematan biaya.
- Komputer paralel dapat dibangun dari biaya rendah, komponen komoditas.
- Banyak masalah yang begitu besar dan / atau kompleks yang tidak praktis atau tidak mungkin untuk memperbaikinya pada satu komputer, terutama dalam pandangan dari memori komputer yang terbatas.
- Contoh: "Grand Challenge masalah" (en.wikipedia.org/wiki/Grand_Challenge) yang petaflops dan petabyte sumber daya TI.
- Contoh: mesin pencari Web / database untuk memproses jutaan transaksi per detik
- Sebuah sumber daya komputasi tunggal hanya satu hal pada suatu waktu. Beberapa sumber dapat menghitung banyak hal sekaligus.
- Contoh: Collaborative Networks, tempat global di mana orang-orang dari seluruh dunia dapat bertemu dan melakukan pekerjaan "hampir".
- Menggunakan sumber daya komputasi pada wide area network atau bahkan Internet ketika sumber daya lokal menghitung langka atau tidak memadai.
- Contoh: SETI @ home (setiathome.berkeley.edu) lebih dari 1,5 juta pengguna di hampir setiap negara di dunia. Sumber: www.boincsynergy.com/stats/ (Juni 2015).
- Komputer modern, bahkan laptop, yang arsitektur paralel dengan prosesor ganda / core.
- Software paralel dirancang khusus untuk perangkat paralel dengan beberapa core, benang, dll
- Dalam kebanyakan kasus, menjalankan program serial pada komputer modern "buang" kekuatan potensial.
Implementasi Pada Perusahaan
Secara historis, komputasi
paralel dianggap "high end komputasi," dan digunakan untuk model
masalah kompleks di banyak bidang ilmu pengetahuan dan teknologi:
- Suasana, bumi, lingkungan
- Fisika - diterapkan, nuklir, partikel, benda terkondensasi, tekanan tinggi, fusion, Photonics
- Bioscience, Bioteknologi, Genetika
- Kimia, Ilmu Molekuler
- Geologi, seismologi
- Teknik Mesin - prosthetics untuk pesawat ruang angkasa
- Teknik Elektro, Circuit Design, Microelectronics
- Ilmu Komputer, Matematika
- Pertahanan, senjata
No comments :
Post a Comment