English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

gäst
1 / ?

Log-log-diagram & mättnad

Beräkningshastigheten följde en exponentiell tillväxtkurva i 50 år. I ett log-linjärt diagram (loggad hastighet mot linjär tid) framträder detta som en rät linje med lutning b = tillväxttakten i storleksordningar per år.

Fysiska begränsningar sätter ett horisontellt tak: en maxhastighet S_max som bestäms av molekylstorlek, ljushastighet & värmebegränsningar. När det exponentiella växandet närmar sig S_max måste tillväxten bromsa.

Logistisk mättnad

En vanlig modell för tillväxt med ett tak:

S(t) = S_max / (1 + e^(−r(t − t₀)))

Detta är den logistiska ekvationen tillämpad på teknik. I tidiga skeden (t << t₀): S(t) ≈ S_max × e^(r(t−t₀)) — ren exponentiell tillväxt. Nära taket (t >> t₀): S(t) → S_max asymptotiskt.

Geometrin: en rät linje i log-linjära koordinater böjs av nära taket och bildar en S-form i linjär-linjära koordinater.

Hårdvarugeometri: Amdahls lag & ljushastighetsfär

När mättar tillväxten?

Antag att enprocessorhastigheten växer med 10^(0.09t) från 10⁰ ops/sek år 1940. Fysiskt tak: S_max = 10^(12) ops/sek (en grov uppskattning för en enkärnig processor, begränsad av termiska & ljushastighetsbegränsningar).

Använd S(t) = 10^(0.09·t) (t = år sedan 1940) och finn det år då S(t) når 10¹⁰ (nära taket). Visa algebran. Beräkna sedan: hur många fördubblingar av hastigheten sker mellan 1952 (IBM 701) och det aktuella takåret? Använd fördubblingstid = ln(2)/b där b = 0.09 × ln(10).

Maximal kommunikationsradie

En processors klockhastighet bestämmer den maximala radius inom vilken den kan kommunicera på en cykel. Signaler färdas med ungefär 2×10⁸ m/s i koppar.

För en klockperiod T (i sekunder) är den maximala envägs kommunikationsradien:

r_max = v × T / 2

(dela med 2 för tur-retur: signalen måste sändas ut och återvända inom T)

När klockhastigheten ökar minskar T, och därmed krymper r_max. Denna geometriska begränsning tvingar komponenter att klustras närmare — vilket minskar kretskortsytan — eller att acceptera flercykelsfördröjning för kommunikation utanför chippet.

Influensfären

Alla komponenter som kan nås inom en klockcykel bildar en sfär med radien r_max centrerad på processorn. Volym: V = (4/3)π r_max³.

Om komponentdensiteten är ρ (komponenter/m³) ges antalet komponenter som kan nås inom en cykel av: N = ρ × V = ρ × (4/3)π r_max³.

När r_max krymper med ökande klockhastighet minskar N kubiskt — en 2× ökning av klockhastigheten minskar antalet nåbara komponenter med (1/2)³ = 1/8.

Nåbara komponenter per klockcykel

En arbetsstation från 1993 körs med 100 MHz (T = 10 ns). Signalhastighet = 2×10⁸ m/s. Komponentdensitet på ett kretskort ≈ 10⁸ komponenter/m³ (grov uppskattning inklusive chip, motstånd och kondensatorer).

Ett modernt GPU körs med 2 GHz (T = 0,5 ns).

För 100 MHz-arbetsstationen (T=10 ns, v=2×10⁸ m/s, ρ=10⁸/m³): beräkna r_max, sedan V = (4/3)π r_max³, sedan N = ρ × V. Beräkna sedan samma N för en 2 GHz-processor (samma ρ, samma v). Vad är kvoten N(100MHz) / N(2GHz)?

Gränsen för parallell hastighetsökning

Enprocessorhastigheten närmar sig fysiska tak. Branschens svar: parallella arkitekturer. Amdahls lag kvantifierar den hastighetsökning som kan uppnås med parallellism.

Amdahls lag

Antag att en bråkdel f av ett program kan parallelliseras, och bråkdelen (1−f) måste köras seriellt. Med p processorer:

Speedup(p) = 1 / ((1−f) + f/p)

När p → ∞: Speedup_max = 1 / (1−f)

Den seriella bråkdelen (1−f) sätter ett hårt tak för uppnåelig hastighetsökning, oavsett hur många processorer man lägger till.

Geometrisk insikt: Hastighetsökning som funktion av p följer en hyperbolisk kurva. Asymptoten är 1/(1−f). För f = 0,9 är maximal hastighetsökning = 10, även med oändliga processorer. För f = 0,99 är maximal hastighetsökning = 100.

Hammings underförstådda lärdom: intresset för parallella arkitekturer var genuint, men utdelningen berodde helt på hur paralleliserbar arbetsbelastningen var — ett faktum som många parallellberäkningsoptimister ignorerade.

Beräkna parallell hastighetsökning

En vetenskaplig simulering körs på 1 000 sekunder på en processor. Profilering avslöjar: 200 sekunder i en seriell initieringsfas (kan inte parallelliseras); 800 sekunder i en parallell beräkningsfas.

Beräkna den parallella bråkdelen f. Använd Amdahls lag för att beräkna Speedup(4), Speedup(16), Speedup(∞). Visa varje formeltillämpning. Tolka sedan: är det värt hårdvarukostnaden att lägga till processorer från 16 till ∞? Vad säger geometrin om avtagande avkastning?