stringtranslate.com

RAM computacional

La RAM computacional ( C-RAM ) es una memoria de acceso aleatorio con elementos de procesamiento integrados en el mismo chip. Esto permite que la C-RAM se utilice como una computadora SIMD . También se puede utilizar para utilizar de manera más eficiente el ancho de banda de memoria dentro de un chip de memoria. La técnica general para realizar cálculos en la memoria se denomina Procesamiento en memoria (PIM).

Descripción general

Las implementaciones más influyentes de la RAM computacional surgieron del Proyecto IRAM de Berkeley . La IRAM vectorial (V-IRAM) combina la memoria DRAM con un procesador vectorial integrado en el mismo chip. [1]

La arquitectura DRAM reconfigurable (RADram) es una DRAM con elementos lógicos FPGA de computación reconfigurables integrados en el mismo chip. [2] Las simulaciones de SimpleScalar muestran que la RADram (en un sistema con un procesador convencional) puede brindar un rendimiento órdenes de magnitud mejor en algunos problemas que la DRAM tradicional (en un sistema con el mismo procesador).

Algunos problemas computacionales vergonzosamente paralelos ya están limitados por el cuello de botella de von Neumann entre la CPU y la DRAM. Algunos investigadores esperan que, por el mismo costo total, una máquina construida a partir de RAM computacional funcione órdenes de magnitud más rápido que una computadora tradicional de propósito general en este tipo de problemas. [3]

A partir de 2011, el "proceso DRAM" (pocas capas; optimizado para alta capacitancia) y el "proceso CPU" (optimizado para alta frecuencia; típicamente el doble de capas BEOL que DRAM; dado que cada capa adicional reduce el rendimiento y aumenta el costo de fabricación, dichos chips son relativamente caros por milímetro cuadrado en comparación con DRAM) son lo suficientemente distintos como para que haya tres enfoques para la RAM computacional:

Algunas CPU diseñadas para construirse con una tecnología de proceso DRAM (en lugar de una tecnología de proceso "CPU" o "lógica" específicamente optimizada para CPU) incluyen el Proyecto IRAM de Berkeley , TOMI Technology [4] [5] y el AT&T DSP1 .

Debido a que un bus de memoria hacia una memoria fuera del chip tiene muchas veces la capacitancia de un bus de memoria en el chip, un sistema con chips DRAM y CPU separados puede tener varias veces el consumo de energía de un sistema IRAM con el mismo rendimiento de computadora . [1]

Debido a que se espera que la DRAM computacional funcione a mayor temperatura que la DRAM tradicional, y el aumento de las temperaturas del chip da como resultado una fuga de carga más rápida de las celdas de almacenamiento de la DRAM, se espera que la DRAM computacional requiera una actualización de la DRAM más frecuente . [2]

Procesador en memoria o cerca de ella

Un procesador en memoria o cerca de ella (PINM) se refiere a un procesador de computadora (CPU) estrechamente acoplado a la memoria , generalmente en el mismo chip de silicio .

El objetivo principal de fusionar los componentes de procesamiento y memoria de esta manera es reducir la latencia de la memoria y aumentar el ancho de banda . Alternativamente, reducir la distancia que deben trasladarse los datos reduce los requisitos de energía de un sistema. [6] Gran parte de la complejidad (y, por lo tanto, el consumo de energía ) de los procesadores actuales se debe a estrategias para evitar bloqueos de memoria.

Ejemplos

En la década de 1980, se fabricó una pequeña CPU que ejecutaba FORTH en un chip DRAM para mejorar PUSH y POP. FORTH es un lenguaje de programación orientado a pilas y esto mejoró su eficiencia.

El transputer también tenía una gran memoria en chip dado que fue fabricado a principios de la década de 1980, lo que lo convertía esencialmente en un procesador en memoria.

Entre los proyectos PIM más destacados se incluyen el proyecto IRAM de Berkeley (IRAM) en la Universidad de California, Berkeley [7] y el proyecto PIM de la Universidad de Notre Dame [8] .

Taxonomía PIM basada en DRAM

Los diseños en memoria y cerca de memoria basados ​​en DRAM se pueden clasificar en cuatro grupos:

Véase también

Referencias

  1. ^ abc Christoforos E. Kozyrakis, Stylianos Perissakis, David Patterson, Thomas Anderson, et al. "Procesadores escalables en la era de los mil millones de transistores: IRAM". IEEE Computer (revista) . 1997. dice "Vector IRAM... puede funcionar como un motor de autoprueba integrado en paralelo para la matriz de memoria, lo que reduce significativamente el tiempo de prueba de la DRAM y el costo asociado".
  2. ^ de Mark Oskin, Frederic T. Chong y Timothy Sherwood. "Páginas activas: un modelo computacional para la memoria inteligente". Archivado el 22 de septiembre de 2017 en Wayback Machine . 1998.
  3. ^ Daniel J. Bernstein . "Notas históricas sobre el enrutamiento en malla en NFS". 2002. "Programación de una RAM computacional"
  4. ^ "TOMI el microprocesador de milivatios" [ enlace muerto permanente ]
  5. ^ Yong-Bin Kim y Tom W. Chen. "Evaluación de la tecnología lógica/DRAM fusionada". 1998. "Copia archivada" (PDF) . Archivado desde el original (PDF) el 25 de julio de 2011. Consultado el 27 de noviembre de 2011 .{{cite web}}: CS1 maint: archived copy as title (link)[1]
  6. ^ "GYRFALCON COMIENZA A ENVIAR UN CHIP DE IA". electronics-lab . 2018-10-10 . Consultado el 5 de diciembre de 2018 .
  7. ^ IRAM
  8. ^ "PIM". Archivado desde el original el 9 de noviembre de 2015. Consultado el 26 de mayo de 2015 .
  9. ^ Hadi Asghari-Moghaddam, et al., "Chameleon: Arquitectura de aceleración cercana a DRAM versátil y práctica para sistemas de memoria de gran tamaño".
  10. ^ Liu Ke, et al., "RecNMP: Aceleración de la recomendación personalizada con procesamiento cercano a la memoria".
  11. ^ Dongping, Zhang, et al., "TOP-PIM: Procesamiento programable orientado al rendimiento en memoria".
  12. ^ Sukhan Lee, et al., "Arquitectura de hardware y pila de software para PIM basada en tecnología DRAM comercial: producto industrial".
  13. ^ Shuangchen Li, et al., "DRISA: Un acelerador in situ reconfigurable basado en dram".
  14. ^ Marzieh Lenjani, et al., "Fulcrum: un mecanismo simplificado de control y acceso hacia aceleradores in situ flexibles y prácticos".

Bibliografía