Ce este legea lui Amdahl?

Legea lui Amdahl este o teorie care implică realizarea de algoritmi fie în serie, fie în paralel. Acesta afirmă că beneficiile rulării în paralel (adică efectuarea mai multor pași simultan) sunt limitate de orice secțiune a algoritmului care poate fi rulată numai în serie (un pas la un moment dat). Cea mai frecventă utilizare a legii lui Amdahl este în calculul paralel, cum ar fi pe mașinile multi-core.

În esență, legea lui Amdahl este o formulă matematică. Pusă în forma sa cea mai simplă, spune că cea mai mare creștere a vitezei care se poate obține prin paralelizarea unui proces este egală cu unu împărțit la proporția procesului care nu poate fi paralelizat, minus unu. De exemplu, dacă 80% dintr-un proces poate fi paralelizat, atunci unul împărțit la restul de 20% dă cinci; luând unul lasă patru. Aceasta înseamnă că paralelizarea procesului în acest fel îl face să ruleze de patru ori mai repede. Formula funcționează și acolo unde doar o minoritate a procesului poate fi paralelizată: dacă 12% poate fi paralelizat, calculul este unul împărțit la 88%, ceea ce este egal cu 1.136, minus unu, ceea ce înseamnă o creștere de 13.6% a vitezei.

Formula poate fi adaptată pentru utilizare în situații mai complicate în care diferitele etape ale procesului obțin creșteri diferite de viteză de la paralelizare. Aceasta implică producerea unei cifre pentru fiecare etapă, care este procentul de timp dedicat acelei etape înainte de paralelizare, împărțit la creșterea vitezei, apoi adunând aceste cifre pentru a produce un total. Formula împarte apoi unul la acest total și scade unul din rezultat, dând creșterea generală a vitezei.

Domeniul major în care se utilizează legea lui Amdahl este calculul paralel. Aici lucrează mai multe procesoare la o sarcină simultan. Aceasta se ocupă de unul dintre dezavantajele majore ale procesoarelor computerelor, și anume că funcționează foarte rapid, dar pot efectua doar o singură acțiune la un moment dat. În unele cazuri, un procesor cu mai multe nuclee poate efectua eficient calcule paralele, deoarece simulează mai multe procesoare.

În timp ce unii oameni susțin că legea lui Amdahl este un nume înșelător și că ar trebui să fie într-adevăr „argumentul lui Amdahl”, numele este un joc de cuvinte legate de legea lui Moore. Aceasta este o teorie bazată pe o declarație din 1965 a fondatorului Intel, Gordon Moore. El a prezis că tehnologia va avansa astfel încât numărul de tranzistori montați pe un circuit integrat să se dubleze la fiecare doi ani, o predicție care s-a dovedit extrem de precisă.