Plot Log-Log & Penurunan
Kecepatan komputasi mengikuti kurva pertumbuhan eksponensial selama 50 tahun. Pada plot log-linear (log kecepatan vs waktu linear), ini tampak sebagai garis lurus dengan kemiringan b = tingkat pertumbuhan orde per tahun.
Batasan fisik menimbulkan atap horizontal: kecepatan maksimum S_max yang ditentukan oleh ukuran molekul, kecepatan cahaya, & batasan panas. Saat eksponensial mendekati S_max, pertumbuhan harus melambat.
Penurunan Logistik
Model umum untuk pertumbuhan dengan atap:
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. Dekat atap (t >> t₀): S(t) → S_max secara asimtotik.
Geometri: garis lurus pada koordinat log-linear melengkung di dekat atap, menghasilkan huruf S saat dilihat pada koordinat linear-linear.
Kapan Pertumbuhan Menjadi Stasioner?
Anggap kecepatan single-processor tumbuh sebesar 10^(0,09t) mulai dari 10⁰ operasi/detik pada tahun 1940. Atap fisik: S_max = 10^(12) operasi/detik (anggaran kasar untuk processor tunggal, terbatas oleh konstrain panas & kecepatan cahaya).
Jari-jari Komunikasi Maksimum
Kecepatan jam processor menentukan jari-jari maksimum di mana ia dapat berkomunikasi dalam satu siklus. Signal bergerak dengan kecepatan sekitar 2×10⁸ m/s di kabel.
Untuk periode jam T (dalam detik), jari-jari komunikasi maksimum satu arah:
r_max = v × T / 2
(bagi 2 untuk perjalanan bolak-balik: signal harus keluar dan kembali dalam T)
Semakin cepat kecepatan jam, T menurun, sehingga r_max mengecil. Konstrain geometris ini memaksa komponen untuk lebih dekat - mengurangi luas chip - atau menerima latensi multi-siklus untuk komunikasi off-chip.
Lingkaran Pengaruh
Semua komponen yang dapat dijangkau dalam satu siklus jam membentuk lingkaran dengan jari-jari r_max dan berpusat pada processor. 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³.
Seiring mengecilnya r_max dengan meningkatnya kecepatan jam, N mengecil kubik - peningkatan 2× kecepatan jam mengurangi jumlah komponen yang dapat dijangkau oleh (1/2)³ = 1/8.
Komponen Terjangkau per Siklus Jam
Stasiun kerja tahun 1993 berjalan pada 100 MHz (T = 10 ns). Kecepatan signal = 2×10⁸ m/s. Kepadatan komponen pada papan sirkuit ≈ 10⁸ komponen/m³ (perkiraan kasar termasuk chip, resistor, capacitor).
GPU modern berjalan pada 2 GHz (T = 0.5 ns).
Batasan Kecepatan Paralel
Kecepatan single-processor mendekati atap fisik. Respons industri: arsitektur paralel. Hukum Amdahl mengukur kecepatan yang dapat dicapai dari paralelisme.
Hukum Amdahl
Misalkan sebagian f dari program dapat di parallelisasi, dan sebagian (1−f) harus dijalankan secara serial. Dengan p processor:
Speedup(p) = 1 / ((1−f) + f/p)
Ketika p → ∞: Speedup_max = 1 / (1−f)
Fraksi serial (1−f) menentukan atap keras pada kecepatan yang dapat dicapai, terlepas dari berapa banyak processor yang Anda tambahkan.
Insight geometri: Kecepatan sebagai fungsi dari p mengikuti kurva hiperbola. Asimetri adalah 1/(1−f). Untuk f = 0,9, kecepatan maksimum = 10, bahkan dengan processor tak terhingga. Untuk f = 0,99, kecepatan maksimum = 100.
Pengajaran tersirat Hamming: minat dalam arsitektur paralel benar-benar nyata, tetapi imbalan tergantung secara penuh pada seberapa paralelizable beban kerja - sebuah fakta yang banyak optimis komputasi paralel lewatkan.
Menghitung Kecepatan Paralel
Simulasi ilmiah berjalan dalam 1000 detik pada satu processor. Profiling menunjukkan: 200 detik dalam fase inisialisasi serial (tidak dapat di parallelisasi); 800 detik dalam fase komputasi paralel.