Experimentální vícejádrový čip, jehož vnitřní struktura používá síťové spojení podobně jako u internetu. Dočkáme se v budoucnu rozšíření „NoC“ - Network on Chip?
Pryč jsou doby, kdy světu stačilo pár nepropojených počítačů a stejně tak i jednojádrové procesory, které mají pouze jedinou výpočetní jednotku. Už i v tabletech a mobilních telefonech máme čtyřjádrové čipy a do budoucna se počet jader bude stále zvyšovat.
A právě na tento problém se zaměřili inženýři z MIT a vytvořili experimentální čip, který řeší problémy spojené s velkým počtem jader a efektivní komunikaci uvnitř čipu.
36 jader zapojených do sítě uvnitř čipu
S malým počtem jader není v rámci komunikace uvnitř čipu velký problém. V případě rostoucího počtu ale přichází nutnost datovou komunikaci mezi jednotlivými výpočetními jádry efektivně přepínat a přenášet. To vše bez zahlcení nějaké jednoduché datové sběrnice, ke které všechna jádra přistupují. Takové sběrnice jsou základem dnešních čipů a jednotlivá jádra dostávají přidělený čas, ve kterém musí potřebná data přenést.
Jak ale popisuje Li-Shiuan Peh z MIT, při větším počtu jader tento způsob propojení nebude fungovat, protože by výpočetní jednotky většinu času čekaly, až se sběrnice uvolní.
Konstrukce experimentálního 36jádrového čipu od MIT. Každé jádro má router pro snadnou komunikaci
Řešení NoC – Network on Chip využívá stejného propojení jako třeba používá internet. Každé jádro má tak kromě obvyklých komponent (řadič a různé stupně cache, výpočetní logika) také vlastní jednoduchý síťový router. Každé jádro je spojené pouze se sousedními jádry, což sice znamená perfektní odezvu a možnost komunikace skrze čip přes různé trasy, přináší to ale problém s koherencí rychlé vnitřní cache paměti.
To se ale inženýrům podařilo vyřešit pomocí integrace druhé jednoduché sítě, která kopíruje tu hlavní a stará se tak o kontrolu a hierarchii přenášených packetů. Zároveň také umožňuje pracovat s hierarchií a předávání dat mezi cache u jednotlivých jader.
Adapteva a Tilera už mají našlápnuto
Zmíněná technologie však není pouze na papíře, ale podařilo se vyrobit i funkční experimentální 36jádrový čip, který by měl být brzy schopen běhu i upraveného operačního systému Linux pro 36 jader.
Porovnání konstrukce vícejádrového čipu od Tilera a Adapteva
Podle plánu také dojde k uvolnění podrobných materiálů a zdrojových kódů jako open source, takže bude technologie dostupná zdarma komukoli pro případnou integraci nebo třeba ještě další vylepšení. Ale jak už to občas bývá, zas tak úplně o novou myšlenku nejde.
Porovnání konstrukce s běžnými druhy čipů
V oblasti vícejádrových čipů už totiž poměrně úspěšně tvoří a vylepšují své čipy společnosti jako Adapteva (čipy Epiphany) nebo třeba Tilera (čipy TILE-Gx). Obě společnosti používají podobné řešení, kdy každé výpočetní jádro má u sebe síťový router pro posílání packetů skrze různé cesty v rámci čipu.
Adapteva má v plánu dokonce i čip s 4 096 miniaturními jádry na frekvenci 1 GHz, nabízí dokonce i populární malý počítač na desce – Parallella Board, který obsahuje 16jádrový až 64jádrový čip s výkonem až 90 GFLOPS. Včetně dokumentace a softwarové podpory.
Tilera nabízí až 72jádrové čipy Tile-Gx8072, které jsou určené především do síťového prostředí pro spojení i více těchto čipů skrze integrované 10gbitové spojení. Tyto čipy se pyšní velmi nízkou spotřebou.
Spousty jader zapojených do rychlé sítě
Jak je vidět, řešení pro konstrukci čipů, které budou mít tisíce a možná klidně i miliony jader, jsou už dnes k dispozici.
V budoucnu se tak s velkou pravděpodobností setkáme s trojrozměrnými čipy, které budou mít jednotlivá jádra propojená uvnitř čipu právě v podobné síťové konstrukci a každý čip tak bude takový malý „výpočetní internet“. Ostatně podobně to můžeme vidět i na mozku.
Adapteva Parallella - deska s 64jádrovým čipem a spotřebou 2 W
Asi nejlépe to vystihuje heslo společnosti Tilera – „Procesorové jádro je nový tranzistor“. Nesmíme ale zapomínat na to, že stále je potřeba nejen velký počet jednoduchých výpočetních jednotek pro vysoký paralelní výkon, ale pro některé úlohy je vhodnější menší počet jader s vysokou frekvencí a vysokým výkonem.
Ideálním univerzálním řešením je tak hybridní řešení, které kombinuje obě konstrukce. A právě proto už dnes máme první varianty hybridních čipů nebo řešení SoC (System on Chip).