Manycore procesor - Manycore processor

Manycore procesory jsou speciální druh vícejádrových procesorů navržených pro vysoký stupeň paralelního zpracování , které obsahují řadu jednodušších, nezávislých procesorových jader (od několika desítek jader po tisíce nebo více). Manycore procesory jsou široce používány ve vestavěných počítačích a vysoce výkonných počítačích .

Kontrast s vícejádrovou architekturou

Mnohojádrové procesory se od vícejádrových procesorů liší tím, že jsou od začátku optimalizovány pro vyšší stupeň explicitní rovnoběžnosti a pro vyšší propustnost (nebo nižší spotřebu energie) na úkor latence a nižšího výkonu jednoho vlákna .

Širší kategorie vícejádrové procesory , naopak, jsou obvykle navrženy tak, aby efektivně provozovat i paralelně a sériové číslo, a proto kladou větší důraz na vysokou jednom provedení vlákna (např věnovat více křemíku do z provedení pokynu , hlubší potrubí , více superskalární prováděcí jednotky a větší, obecnější mezipaměti) a sdílenou paměť . Tyto techniky věnují prostředky za běhu zjišťování implicitního paralelismu v jednom vlákně. Používají se v systémech, kde se vyvíjely nepřetržitě (se zpětnou kompatibilitou) z jednojádrových procesorů. Obvykle mají „několik“ jader (např. 2,4,8) a mohou být v heterogenním systému doplněny mnohojádrovým akcelerátorem (například GPU ) .

Motivace

Soudržnost mezipaměti je problém omezující škálování vícejádrových procesorů. Mnohojádrové procesory to mohou obejít metodami, jako je předávání zpráv , paměť zápisníku , DMA , dělený globální adresní prostor nebo mezipaměti jen pro čtení/nekoherentní. Mnohojádrový procesor využívající síť na čipu a lokální paměti dává softwaru možnost výslovně optimalizovat prostorové rozložení úkolů (např. Jak je vidět na nástrojích vyvinutých pro TrueNorth ).

Manycore procesory mohou mít více společného (koncepčně) s technologiemi pocházejícími z vysoce výkonných počítačů, jako jsou klastry a vektorové procesory .

GPU lze považovat za formu mnohojádrového procesoru s více jednotkami zpracování shaderů a jsou vhodné pouze pro vysoce paralelní kód (vysoká propustnost, ale extrémně špatný výkon jednoho vlákna).

Vhodné programovací modely

Třídy manycore systémů

Specifické mnohojádrové architektury

Konkrétní mnohojádrové počítače s 1M+ jádry CPU

Řada počítačů postavených z vícejádrových procesorů má jeden nebo více jednotlivých jader CPU. Mezi příklady patří:

Viz také

Reference

externí odkazy