z Wikipédie, slobodnej encyklopédie
Amdahlové pravidlo je používané v informatike k vyjadreniu maximálneho predpokladaného zlepšenia systému potom, čo je vylepšená iba niektorá z jeho častí. Využíva sa napr. u viacejprocesorových systémov k predpovedaní teoretického maximálneho zrýchlenia pri pridávaní ďalších procesorov .
Veľkosť zlepšenia môžeme označiť ako zrýchlenie S a bude nám určovať, koľkokrát je beh úlohy s vylepšením rýchlejší.
S
=
výkonnosť pri použití zlepšenia
výkonnost bez použití zlepšenia
=
P
nový
P
pôvodný
{\displaystyle S={\frac {\text{výkonnosť pri použití zlepšenia}}{\text{výkonnost bez použití zlepšenia}}}={\frac {P_{\text{nový}}}{P_{\text{pôvodný}}}}}
alebo tiež pomocou
S
=
doba výpočtu bez použitia zlepšenia
doba výpočtu pri použití zlepšenia
=
T
pôvodný
T
nový
{\displaystyle S={{\text{doba výpočtu bez použitia zlepšenia}} \over {\text{doba výpočtu pri použití zlepšenia}}}={T_{\text{pôvodný}} \over T_{\text{nový}}}}
Pokiaľ chceme počítať celkový zisk na vylepšenie určitých častí, môžeme použiť nasledujúci postup:
Najskôr definujeme premenné
F
E
=
pôvodná doba výpočtu zlepšenej časti
pôvodná celková doba výpočtu
≤
1
{\displaystyle F_{E}={{\text{pôvodná doba výpočtu zlepšenej časti}} \over {\text{pôvodná celková doba výpočtu}}}\leq 1}
S
E
=
pôvodná doba výpočtu zlepšenej časti úlohy
doba výpočtu zlepšenej časti úlohy
>
1
{\displaystyle S_{E}={{\text{pôvodná doba výpočtu zlepšenej časti úlohy}} \over {\text{doba výpočtu zlepšenej časti úlohy}}}>1}
potom môžeme spočítať dobu výpočtu po zlepšení
T
po zlepšení
=
T
pred zlepšením
×
[
(
1
−
F
E
)
+
F
E
S
E
]
{\displaystyle T_{\text{po zlepšení}}=T_{\text{pred zlepšením}}\times \left[(1-F_{E})+{F_{E} \over S_{E}}\right]}
celkové zrýchlenie S potom môžeme spočítať ako
S
celkové
=
T
pred zlepšením
T
po zlepšení
=
1
(
1
−
F
E
)
+
F
E
S
E
{\displaystyle S_{\text{celkové}}={T_{\text{pred zlepšením}} \over T_{\text{po zlepšení }}}={1 \over {(1-F_{E})+{F_{E} \over S_{E}}}}}