Vědci z MIT dokážou dramaticky zvýšit výkon vícejádrových čipů

2. 2. 2015

Sdílet

 Autor: © kromkrathog - Fotolia.com
S tím, jak každá nová generace počítačových procesorů přichází s větším množstvím jader, počítačoví odborníci přemýšlejí nad tím, jak tuto výpočetní sílu využít. A vědci na Massachusetts Institute of Technology (MIT) vytvořili datovou strukturu, která je podle nich vhodná k tomu, aby procesory s více jádry zvládaly práci co možná nejefektivněji.

V čem to spočívá? Nepoužívat při zpracování dat metodu „zpracovat první požadavek, který přišel jako první“ a místo ní přidělovat úkoly mezi jádra náhodně.

Nový algoritmus MIT s označením SprayList umožňuje procesorům rozmělnit práci mezi jednotlivá jádra tak, aby každé jádro zpracovávalo přidělený kus práce. U procesorů s opravdu velkým množstvím jader - jakým je například nový Intel E5 2600v3 s 18 jádry - může SprayList vést k opravdu razantnímu nárůstu výkonu.

Problém je v tom, že práce, kterou má počítač odvést, musí být distribuována mezi všechna jádra stejně. S příchodem prvních dvou- a čtyřjádrových procesorů před více než deseti lety vědci přišli s technikou, podle které je úkol, který čeká v řadě, přidělen dalšímu jádru, které má kapacitu. Tato tradiční metoda funguje bez problémů u procesorů s až osmi jádry. Jakmile je však jader více, výkon klesá.

Stejně jako mnoho kuchařů v jedné malé kuchyni, i mnoho jader pracujících pomocí tradiční metody může zpomalovat výkon. Vědci s MIT proto přišli s novým algoritmem, který přiřazuje prioritu jednotlivým úkolům takovým způsobem, který bude efektivnější pro procesory s až 80 jádry.

bitcoin_skoleni

Namísto toho, aby každému jádru byl přidělen další požadavek v řadě, je jádru přidělen náhodný požadavek, čímž se sníží pravděpodobnost toho, že dvě jádra začnou zpracovávat ten samý úkol, jako je tomu u tradiční metody.

Doposud teorie pracovala s tím, že náhodné přidělování úkolů je pomalejší, jelikož jednotlivá jádra ve svých cache nemohou uchovávat naplánovaný seznam úkolů, které bude třeba zpracovat a přidělování náhodného úkolu navíc trvá déle. Avšak s tím, jak se počet jader zvyšuje, nehrají již tyto nevýhody takovou roli a podle vědců z MIT je naopak výhodnější úkoly přidělovat náhodně.

Na studii pracovali dva absolventi MIT Justin Kopinsky a Jerry Li, jimž pomáhal profesor Nir Shavit a zaměstnanec Microsoft Research Dan Alistarh. Kompletní výsledky studie budou prezentovány příští měsíc v San Fancisku.