Bubnový procesor

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.

Historie

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

Výhody oproti jednovláknovým procesorům

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í:

Nevýhody oproti jednovláknovým procesorům

Sudové procesory mají několik nevýhod .

Poznámky

  1. počítačové systémy CDC Cyber ​​​​170; Modely 720, 730, 750 a 760; Model 176 (úroveň B); Instrukční sada CPU; Instrukční sada PPU Archivována 3. března 2016 na Wayback Machine  - Viz strany 2-44 pro ilustrace střídání "bubnu".
  2. アーカイブされたコピー. Získáno 11. srpna 2012. Archivováno z originálu 22. února 2012.
  3. Historie: Seymour Cray & Cray Research to Cray Inc. | Cray Archivováno 12. července 2014.
  4. Výpočetní řešení pro analýzu velkých dat | Archivováno z originálu 9. srpna 2012.
  5. PARC, Xerox Alto Hardware Manual . BitSevers. Získáno 11. října 2016. Archivováno z originálu 4. září 2017.

Odkazy