Komputasi Paralel dan Terdistribusi
Diperkenalkan| English | Makna |
|---|---|
| sequential computing/siːˈkwenʃl kəmˈpjuːtɪŋ/ | komputasi berurutan |
| Parallel computing/ˈpærəlel kəmˈpjuːtɪŋ/ | komputasi paralel |
| processors/ˈprəʊsesəz/ | prosesor |
| Distributed computing/ˈdɪstrɪbjuːtɪd kəmˈpjuːtɪŋ/ | komputasi terdistribusi |
| speedup/ˈspiːdʌp/ | percepatan |
Satu langkah demi satu
- Secara tradisional, komputer menjalankan langkah satu per satu.
- Ini adalah komputasi berurutan: setiap langkah harus selesai sebelum yang berikutnya dimulai.
- Ini sederhana, tetapi bisa lambat untuk tugas besar.
- Untuk lebih cepat, kita dapat melakukan beberapa langkah sekali.
Dalam komputasi sekuensial:
Difficulty 1/5 · 100 coins + a small bonus on first completion today
Satu langkah demi satu langkah, secara berurutan.
Paralel dan terdistribusi
- Komputasi paralel menggunakan beberapa prosesor dalam satu mesin untuk menjalankan bagian dari tugas secara bersamaan.
- Komputasi terdistribusi menyebarkan tugas ke banyak komputer terpisah, sering kali di lokasi berbeda, yang terhubung melalui jaringan.
- Paralel = banyak prosesor, satu mesin. Terdistribusi = banyak mesin.
- Keduanya bertujuan menyelesaikan tugas besar dengan lebih cepat.
Sekuensial, paralel, atau terdistribusi?
Sekuenial menjalankan satu langkah demi satu langkah; paralel menggunakan beberapa prosesor dalam satu mesin sekaligus; terdistribusi menyebarkan tugas ke banyak komputer terpisah.
Pasangkan setiap istilah dengan artinya.
Difficulty 2/5 · 140 coins + a small bonus on first completion today
Paralel adalah satu mesin; terdistribusi adalah banyak mesin.
Peningkatan kecepatan dan batasnya
- Manfaat komputasi paralel diukur oleh peningkatan kecepatan (speedup):
- $\text{speedup} = \dfrac{\text{time using one processor}}{\text{time using several processors}}$.
- Namun bagian apa pun yang harus berjalan secara berurutan tidak dapat dipercepat dengan menambah prosesor.
- Jadi bagian berurutan menetapkan dasar — batas maksimal pada total peningkatan kecepatan.
Sebuah tugas membutuhkan waktu 100 detik pada satu prosesor dan 40 detik pada beberapa. Berapakah percepatannya?
Difficulty 2/5 · 140 coins + a small bonus on first completion today
percepatan = 100 / 40 = 2.5×.
Jika 20 detik dari tugas 100 detik harus dijalankan secara sekuensial, berapa percepatan maksimum yang mungkin?
Difficulty 2/5 · 140 coins + a small bonus on first completion today
Bahkan dengan prosesor tak terbatas, 20 detik tetap ada: 100 / 20 = 5×.
Mengapa menambahkan lebih banyak prosesor tidak pernah dapat menghapus batas percepatan?
Difficulty 1/5 · 100 coins + a small bonus on first completion today
Bagian sekuensial menetapkan dasar minimum untuk total waktu.
Komputasi terdistribusi cocok untuk pekerjaan besar yang terlalu berat untuk satu mesin, seperti mengindeks seluruh web.
Difficulty 1/5 · 100 coins + a small bonus on first completion today
Kerja dibagi secara alami di atas ribuan komputer.
Ketika terdistribusi bersinar
- Solusi terdistribusi bersinar pada tugas sangat besar — set data raksasa, atau mesin pencari yang mengindeks seluruh web.
- Kerjanya terlalu besar untuk satu mesin dan terbagi secara alami di ribuan mesin.
Peningkatan kecepatan dengan batas. Tugas 100 detik memiliki 80 s paralel dan 20 s berurutan. Pada 4 prosesor, bagian paralel menjadi $80 / 4 = 20$ s, ditambah 20 s berurutan = 40 s. Peningkatan kecepatan $= 100 / 40 = 2.5\times$. Bahkan dengan jutaan prosesor, 20 s berurutan tetap ada, sehingga peningkatan kecepatan tidak pernah bisa melebihi $100 / 20 = 5$.
Komputasi berurutan menjalankan satu langkah demi satu. Komputasi paralel menggunakan beberapa prosesor dalam satu mesin sekaligus; komputasi terdistribusi menyebarkan pekerjaan ke banyak mesin. Keuntungan paralel diukur sebagai peningkatan kecepatan (waktu satu-prosesor ÷ waktu banyak-prosesor), tetapi bagian berurutan membatasnya (di sini, 5×).