Sudový procesor , bubnový procesor, je procesor , který po každém cyklu přepíná mezi toky instrukcí . Tato architektura procesoru je také známá jako „prokládaná“ (prokládaná) nebo „jemnozrnná“ (jemnozrnná) dočasná vícevláknová komunikace . Na rozdíl od simultánního multithreadingu v moderních superskalárních architekturách tato technologie neumožňuje provádění více instrukcí v jednom cyklu.
Stejně jako u preemptivního multitaskingu je každému vláknu spouštění přiřazen vlastní softwarový čítač a další hardwarové registry, aby se zachoval kontext každého vlákna. Sudový procesor může zaručit, že každé vlákno poběží každých n cyklů, na rozdíl od preemptivního multitaskingového procesoru, který obvykle spouští jedno vlákno po stovky nebo tisíce cyklů, zatímco všechna ostatní vlákna čekají, až na ně přijde řada.
Technika návrhu nazvaná C-slowdown může, za předpokladu jednoúlohového schématu procesoru, generovat odpovídající schéma barelového procesoru. Takto vygenerovaný n -vláknový procesor Barrel funguje stejně jako multiprocesorový systém sestavený z n samostatných kopií původního jednoúlohového procesoru, z nichž každá běží přibližně 1/ n své původní rychlosti.
Jedním z nejstarších příkladů bubnového procesoru byl I/O procesor v superpočítači řady CDC 6000 . Byl schopen provést jednu instrukci nebo část komplexní instrukce z každého z 10 různých virtuálních procesorů, nazývaných také periferní procesory, než se vrátil k prvnímu procesoru. [jeden]
Bubnové procesory lze také použít jako centrální procesorové jednotky ve velkých systémech. Například Tera MTA (1988) měl procesor Barrel se 128 vlákny na jádro. [2] [3] Architektura MTA byla dále rozvíjena v následných produktech, jako je YarcData uRiKA , představený v roce 2012, jsou zaměřeny na aplikace pro dolování dat . [čtyři]
Ke snížení nákladů na hardware lze použít sudové procesory. Mikrokód Xerox Alto běžel na sudovém procesoru, který implementoval dva CPU, video řadič, ethernetový řadič, diskový řadič a další I/O zařízení. [5]
Barrel procesory lze nalézt také ve vestavěných systémech, kde jsou zvláště užitečné díky jejich deterministickému výkonu vláken v reálném čase Příkladem je XMOS XCore XS1 (2007), soudkový procesor s osmi vlákny na jádro. XS1 se používá v Ethernetu, USB, audio a dalších řadičích, kde je kritický I/O výkon. Barel procesory se také používají ve specializovaných aplikacích, jako je osmivláknový síťový procesor Ubicom
Jednoúlohový procesor tráví mnoho cyklů operacemi NOOP a nedělá nic užitečného, pokaždé, když dojde k chybě mezipaměti nebo k nečinnosti potrubí . Výhody použití soudkových procesorů oproti jednoúlohovým procesorům jsou následující:
Sudové procesory mají několik nevýhod .
procesorů | Technologie digitálních|||||||||
---|---|---|---|---|---|---|---|---|---|
Architektura | |||||||||
Architektura instrukční sady | |||||||||
strojové slovo | |||||||||
Rovnoběžnost |
| ||||||||
Implementace | |||||||||
Komponenty | |||||||||
Řízení spotřeby |