Processador de molts nuclis

Els processadors de molts nuclis són tipus especials de processadors multinúclis dissenyats per a un alt grau de processament paral·lel, que contenen nombrosos nuclis de processadors més senzills i independents (des d'unes quantes desenes de nuclis fins a milers o més). Els processadors Manycore s'utilitzen àmpliament en ordinadors encastats i informàtica d'alt rendiment.[1]

Contrast amb l'arquitectura multinucli

Els processadors de molts nuclis es diferencien dels processadors de múltiples nuclis perquè s'han optimitzat des del principi per a un grau més alt de paral·lelisme explícit i per a un rendiment més elevat (o un consum d'energia menor) a costa de la latència i un menor rendiment d'un sol fil.

La categoria més àmplia de processadors multinúcli, en canvi, solen estar dissenyades per executar de manera eficient codi paral·lel i sèrie i, per tant, posar més èmfasi en un alt rendiment d'un sol fil (per exemple, dedicar més silici a una execució fora d'ordre, canalitzacions més profundes)., unitats d'execució més superescalars i cachés més grans i generals) i memòria compartida. Aquestes tècniques dediquen recursos en temps d'execució a esbrinar el paral·lelisme implícit en un sol fil. S'utilitzen en sistemes on han evolucionat contínuament (amb compatibilitat cap enrere) a partir de processadors d'un sol nucli. Normalment tenen uns "pocs" nuclis (per exemple, 2, 4, 8) i es poden complementar amb un accelerador de molts nuclis (com una GPU) en un sistema heterogeni.[2]

Motivació

La coherència de la memòria cau és un problema que limita l'escala dels processadors multinucli. Els processadors de molts nuclis poden evitar-ho amb mètodes com el pas de missatges, [3] memòria Scratchpad, DMA, [4] espai d'adreces global particionat, o memòria cau de només lectura/no coherents. Un processador de molts nuclis que utilitza una xarxa en un xip i memòries locals ofereix al programari l'oportunitat d'optimitzar explícitament la disposició espacial de les tasques (per exemple, com es veu a les eines desenvolupades per a TrueNorth).[5]

Els processadors de molts nuclis poden tenir més en comú (conceptualment) amb les tecnologies originades en la informàtica d'alt rendiment, com ara els clústers i els processadors vectorials.

Les GPU es poden considerar una forma de processador de molts nuclis que té múltiples unitats de processament de shader i només són adequades per a codi altament paral·lel (alt rendiment, però un rendiment d'un fil únic extremadament pobre).

Models de programació adequats

Classes de sistemes de molts nuclis

Referències

  1. Hadade, Ioan; di Mare, Luca «Modern multicore and manycore architectures: Modelling, optimisation and benchmarking a multiblock CFD code». Computer Physics Communications, 205, 01-08-2016, pàg. 32–47. DOI: 10.1016/j.cpc.2016.04.006. ISSN: 0010-4655.
  2. «[https://redwood.berkeley.edu/wp-content/uploads/2021/08/Davies2018.pdf FEATURE ARTICLE: Neuromorphic Computing Loihi: A Neuromorphic Manycore Processor with On-Chip Learning]» (en anglès). [Consulta: 24 febrer 2024].
  3. Mattson, Tim. «The Future of Many Core Computing: A tale of two processors» (en anglès), January 2010.
  4. Hendry, Gilbert. «IBM Cell Processor» (en anglès). Arxivat de l'original el 2022-06-15. [Consulta: 24 febrer 2024].
  5. Amir, Arnon. «IBM SyNAPSE Deep Dive Part 3» (en anglès). IBM Research, June 11, 2015. Arxivat de l'original el 2023-12-07. [Consulta: 24 febrer 2024].