Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Silné škálovanie:
* Cieľ: Znížte čas na riešenie pre * fixnú veľkosť * Veľkosť problému zvýšením počtu procesorov. Problém zostáva rovnaký.
* scenár: Máte konkrétny problém, ktorý chcete vyriešiť čo najrýchlejšie. Hodíte na to viac zdrojov (spracovateľov) v nádeji, že drasticky skrátite čas vykonávania.
* Účinnosť: Silná efektívnosť škálovania sa meria podľa toho, do akej miery sa čas vykonávania znižuje pri zvyšovaní počtu procesorov. V ideálnom prípade by zdvojnásobenie procesorov znížilo čas na polovicu. To sa však zriedka stáva dokonale.
* vzorec: `Účinnosť =(zrýchlenie) / (počet procesorov)`
* `Zrýchlenie =(čas vykonávania na 1 procesore) / (čas vykonávania v procesoroch N)`
* Účinnosť 1 (alebo 100%) je perfektné silné škálovanie.
* Obmedzenia: Silné škálovanie má vlastné limity. Keď pridáte viac procesorov, práca, ktorú musí každý procesor urobiť, sa zmenšuje a mení. Nakoniec režijné náklady komunikácie, synchronizácie a nečinného času (procesory čakajúci na ostatných) premôžu výhody paralelizácie. Dosiahnete bod, v ktorom pridanie ďalších procesorov skutočne * zvyšuje * čas vykonávania. Je to kvôli zákonu Amdahla, ktorý uvádza, že zrýchlenie programu je obmedzené podielom programu, ktorý je neodmysliteľne sekvenčný (nedá sa paralelizovať).
* Vplyv na výkon:
* kladné (pôvodne): Skrátený čas vykonávania pre rovnakú veľkosť problému.
* negatívne (nakoniec): Zníženie návratov, keď dominuje komunikácia nad hlavou. Môže dokonca zvýšiť čas vykonávania nad určitý počet procesorov. Prekážky v zdieľaných zdrojoch (napr. Pamäťový zber) sa stávajú výraznejšími.
Slabé škálovanie:
* Cieľ: Udržujte * konštantný * čas vykonávania zvýšením veľkosti problému * a * počet procesorov úmerne. Každý procesor ideálne zvláda rovnaké množstvo práce.
* scenár: Máte problém, ktorý chcete vyriešiť na konkrétnej úrovni výkonnosti, a chcete vyriešiť stále viac veľkých verzií tohto problému pri zachovaní tohto výkonu. Pridáte procesory a podľa toho zväčšujete veľkosť problému.
* Účinnosť: Slabá účinnosť škálovania sa meria podľa toho, ako dobre zostane čas vykonávania konštantný, keď zvyšujete počet procesorov a veľkosť problému. Ak čas vykonávania zostáva konštantný, máte dokonalé slabé škálovanie.
* vzorec: `Efektívnosť =(čas vykonávania pre procesory N a škálovaný problém) / (čas vykonávania pre 1 procesor a základný problém)`
* Účinnosť 1 (alebo 100%) označuje dokonalé slabé škálovanie (konštantný čas vykonávania). Prakticky meriate, ako blízko 1. Efektívnosť zostáva pri škálovaní problému.
* Výhody: Slabé škálovanie je často ľahšie ako silné škálovanie, najmä pre veľmi veľké problémy. Pretože množstvo práce na procesor zostáva relatívne konštantné, komunikácia a synchronizácia režijných nákladov sa nestane tak, že dominuje. Je to obzvlášť užitočné pre problémy, v ktorých chcete preskúmať väčší priestor parametrov alebo simulovať väčší systém v pevnom čase.
* Obmedzenia: Slabé škálovanie má zmysel iba vtedy, ak sa problém dá primerane upraviť. Niektoré problémy majú vlastné obmedzenia ich veľkosti alebo zložitosti.
* Vplyv na výkon:
* kladné: Umožňuje vyriešiť oveľa väčšie problémy v primeranom čase bez výrazného zvýšenia času vykonávania. Demonštruje škálovateľnosť paralelného algoritmu a systému.
* negatívne: Neznižuje čas na vyriešenie A * konkrétneho * fixného problému. Efektívnosť by sa mohla zhoršiť, keď sa zvyšuje problém a počet procesorov v dôsledku toho, že sa náklady na komunikáciu nakoniec stanú významnými.
v súhrne:
| Funkcia | Silné škálovanie Slabé škálovanie
|----------------|----------------------------------------------------|------------------------------------------------------|
| Veľkosť problému Opravené | Zvyšuje sa úmerne s počtom procesorov
| Cieľ Znížte čas vykonávania pre pevný problém Udržiavajte neustály čas vykonávania pre mierky s mierkami
| Zameranie | Zavedenie pre danú úlohu Škálovateľnosť systému a algoritmus |
| Kľúčová otázka O koľko rýchlejšie môžem tento problém vyriešiť? | Aký veľký problém môžem vyriešiť v danom čase? |
| Účinnosť Znižuje sa zvyšovanie režijných nákladov komunikácie Zostáva relatívne konštantné, ak je škálovanie efektívne
| Amdahl zákon Významné obmedzenie Menej obmedzenia
Príklad:
* silné škálovanie: Simulácia počasia pre konkrétne mesto na nasledujúcich 24 hodín. Chcete čo najrýchlejšie získať čo najpresnejšie predpovede. Zvýšite počet procesorov, aby ste urýchlili výpočet.
* Slabé škálovanie: Simulácia počasia pre región. Chcete simulovať počasie vo väčšej a väčšej geografickej oblasti a zároveň si zachovať konkrétny čas rozlíšenia a času simulácie. S rastúcou veľkosťou regiónu pridáte ďalšie procesory.
V praxi sú silné aj slabé škálovanie dôležitými úvahami pri navrhovaní a hodnotení paralelných algoritmov a systémov. Výber, na ktorý sa treba zamerať, závisí od konkrétneho problému a požadovaných výkonnostných cieľov.