Plot Log-Log & Saturasi
Kecepatan komputasi mengikuti kurva pertumbuhan eksponensial selama 50 tahun. Pada plot log-linear (kecepatan log vs waktu linear), ini tampak sebagai garis lurus dengan kemiringan b = laju pertumbuhan dalam orde besaran per tahun.
Batas fisik menetapkan langit-langit horizontal: kecepatan maksimum S_max yang ditentukan oleh ukuran molekul, kecepatan cahaya, & batasan panas. Ketika eksponensial mendekati S_max, pertumbuhan harus melambat.
Saturasi Logistik
Model umum untuk pertumbuhan dengan batas:
S(t) = S_max / (1 + e^(−r(t − t₀)))
Ini adalah persamaan logistik yang diterapkan pada teknologi. Pada waktu awal (t << t₀): S(t) ≈ S_max × e^(r(t−t₀)) — eksponensial murni. Di dekat langit-langit (t >> t₀): S(t) → S_max secara asimtotik.
Geometrinya: garis lurus pada koordinat log-linear melengkung di dekat langit-langit, menghasilkan bentuk-S ketika dilihat pada koordinat linear-linear.
Kapan Pertumbuhan Mencapai Saturasi?
Misalkan kecepatan prosesor tunggal tumbuh sebesar 10^(0.09t) mulai dari 10⁰ ops/detik pada tahun 1940. Langit-langit fisik: S_max = 10^(12) ops/detik (perkiraan kasar untuk prosesor inti tunggal, dibatasi oleh batasan termal & kecepatan cahaya).
Radius Komunikasi Maksimum
Kecepatan clock prosesor menentukan radius maksimum di mana prosesor dapat berkomunikasi dalam satu siklus. Sinyal merambat dengan kecepatan sekitar 2×10⁸ m/s dalam tembaga.
Untuk periode clock T (dalam detik), radius komunikasi satu arah maksimum:
r_max = v × T / 2
(bagi dengan 2 untuk pergi-pulang: sinyal harus keluar dan kembali dalam T)
Ketika kecepatan clock meningkat, T berkurang, sehingga r_max mengecil. Batasan geometris ini memaksa komponen untuk mengelompok lebih dekat, mengurangi area chip, atau menerima latensi multi-siklus untuk komunikasi di luar chip.
Bola Pengaruh
Semua komponen yang dapat dijangkau dalam satu siklus clock membentuk bola berradius r_max berpusat pada prosesor. Volume: V = (4/3)π r_max³.
Jika kepadatan komponen adalah ρ (komponen/m³), jumlah komponen yang dapat dijangkau dalam satu siklus: N = ρ × V = ρ × (4/3)π r_max³.
Ketika r_max mengecil seiring meningkatnya kecepatan clock, N mengecil secara kubik — peningkatan kecepatan clock 2× mengecilkan jumlah komponen yang dapat dijangkau sebesar (1/2)³ = 1/8.
Komponen yang Dapat Dijangkau per Siklus Clock
Sebuah workstation era 1993 berjalan pada 100 MHz (T = 10 ns). Kecepatan sinyal = 2×10⁸ m/s. Kepadatan komponen pada papan sirkuit ≈ 10⁸ komponen/m³ (perkiraan kasar termasuk chip, resistor, kapasitor).
GPU modern berjalan pada 2 GHz (T = 0,5 ns).
Batas Percepatan Paralel
Kecepatan prosesor tunggal mendekati batas fisik. Respons industri: arsitektur paralel. Hukum Amdahl mengkuantifikasi percepatan yang dapat dicapai dari paralelisme.
Hukum Amdahl
Misalkan sebagian f dari program dapat diparalelkan, dan bagian (1−f) harus dijalankan secara serial. Dengan p prosesor:
Speedup(p) = 1 / ((1−f) + f/p)
As p → ∞: Speedup_max = 1 / (1−f)
Bagian serial (1−f) menetapkan batas keras pada percepatan yang dapat dicapai, terlepas dari berapa banyak prosesor yang ditambahkan.
Wawasan geometris: Percepatan sebagai fungsi p mengikuti kurva hiperbolik. Asimtot adalah 1/(1−f). Untuk f = 0,9, percepatan maksimum = 10, bahkan dengan prosesor tak terbatas. Untuk f = 0,99, percepatan maksimum = 100.
Pelajaran implisit Hamming: minat pada arsitektur paralel memang nyata, tetapi hasilnya sepenuhnya bergantung pada seberapa dapat diparalelkan beban kerja tersebut — fakta yang diabaikan oleh banyak optimis komputasi paralel.
Menghitung Percepatan Paralel
Sebuah simulasi ilmiah berjalan dalam 1000 detik pada satu prosesor. Profiling mengungkapkan: 200 detik dalam fase inisialisasi serial (tidak dapat diparalelkan); 800 detik dalam fase komputasi paralel.