¿Qué es la memoria Scratchpad?

El acceso a los datos es una parte fundamental del diseño de la CPU. Las CPU funcionan a velocidades extremadamente altas, procesan múltiples instrucciones en cada ciclo de reloj y, por lo tanto, necesitan acceder a una gran cantidad de datos. La gran mayoría de esos datos se almacenan en los medios de almacenamiento. Sin embargo, los dispositivos de almacenamiento son increíblemente lentos en comparación con una CPU. Los dispositivos de almacenamiento también son significativamente mejores en lecturas secuenciales que en lecturas aleatorias, aunque los SSD ofrecen una mejora notable en este sentido (y muchos otros) sobre los HDD.

La RAM del sistema está diseñada para cargarse con todos los datos que la CPU pueda necesitar para el software que se está ejecutando actualmente. La RAM tiene una latencia significativamente más baja que el almacenamiento, también está específicamente diseñada para tener un alto rendimiento de lectura aleatoria. Aún así, por mucho que la RAM moderna sea rápida, todavía no es nada en comparación con la CPU con latencias del orden de 400 ciclos de reloj.

Para reducir aún más la latencia, la mayoría de las CPU modernas incluyen niveles de memoria caché. Por lo general, estos se denominan cachés L1, L2 y L3. L1 es realmente de alta velocidad, por lo general toma del orden de 5 ciclos de reloj para acceder. L2 es un poco más lento, del orden de 20 ciclos. L3 es aún más lento en alrededor de 200 ciclos. Si bien L1 es increíblemente rápido, también es pequeño. Gran parte de su velocidad proviene del hecho de que los cachés más pequeños toman menos tiempo para buscar. L2 es más grande que L1 pero más pequeño que L3, que es aún más pequeño que la RAM del sistema. Equilibrar bien el tamaño de estos cachés es fundamental para obtener una CPU de alto rendimiento. Las proporciones de aciertos de caché son importantes, pero debe equilibrar la cantidad de aciertos con el tiempo que lleva obtener ese acierto, de ahí los niveles.

Memoria de bloc de notas

Tenga en cuenta que la memoria del bloc de notas no encaja en la jerarquía de memoria tradicional. Eso es porque no se usa en la mayoría de las CPU de consumo. La memoria del bloc de notas está diseñada para usarse como lo sería un bloc de notas en la vida real. Anota la información temporal que necesita recordar pero que no necesita archivar. La mayor parte del tiempo, una CPU procesa datos y luego necesita ese resultado nuevamente de inmediato. Puede copiarlo en la memoria, pero para poder acceder a él rápidamente, también debe mantenerlo en el caché.

La memoria Scratchpad esencialmente llena el mismo espacio que la memoria caché L1. Es accesible lo más rápido posible, a menudo en recuentos cíclicos de un solo dígito. Para gestionar esto, también es relativamente pequeño. Sin embargo, existen dos diferencias clave entre L1 y la memoria scratchpad. En primer lugar, la memoria del bloc de notas es directamente direccionable. En segundo lugar, se comparte entre todos los núcleos y procesadores.

Diferencias entre caché y scratchpad

La memoria caché de la CPU es esencialmente transparente para la CPU, no puede colocar datos allí deliberadamente y su contenido no se puede programar. En cambio, la CPU solo solicita datos de la RAM y los recupera más rápido, a veces significativamente más rápido de lo que podría esperar. Permitir que el bloc de notas sea direccionable significa que el código puede especificar exactamente qué datos deben estar en el bloc de notas. Esto puede ser útil, aunque los algoritmos de almacenamiento en caché modernos son excelentes y se esperan tasas de aciertos del 95-97 % en las cargas de trabajo estándar.

La caché L1 siempre está bloqueada en un núcleo de procesamiento individual. Ningún otro núcleo de procesamiento puede acceder a él. Esto significa que si varios núcleos necesitan los mismos datos, pueden duplicarlos en sus respectivos cachés L1. En algunas arquitecturas de CPU, el L2 es por núcleo, en otras es compartido por un pequeño número o incluso por todos los núcleos. L3 tiende a ser compartido por todos los núcleos. Compartir caché entre núcleos permite que dos o más núcleos accedan a los mismos datos sin duplicarlos. También permite que un núcleo utilice más de lo que le corresponde cuando tiene la necesidad y el caché tiene el espacio.

Scratchpad actúa de manera similar a L1 en términos de velocidad y capacidad, pero se comparte entre todos los núcleos. Esto permite un acceso muy rápido a datos específicos sobre los que se actúa en una carga de trabajo de subprocesos múltiples. La memoria de scratchpad puede incluso compartirse entre distintas CPU en placas base de varios zócalos.

Una desventaja que tiene la memoria del bloc de notas es que se puede confiar demasiado en ella. Al poder acceder a él directamente, el software puede depender de su presencia en ciertas cantidades. En este caso, sería incapaz de ejecutarse en CPU sin tanta memoria de memoria virtual. Los niveles de caché simplemente no sufren este problema y, por lo tanto, se adaptan mejor al uso general.

casos de uso

La memoria scratchpad se encuentra con mayor frecuencia en sistemas de servidores de múltiples sockets diseñados para HPC (computación de alto rendimiento). Allí, su combinación de velocidad y acceso compartido lo hace útil para cargas de trabajo altamente paralelas.

La memoria Scratchpad también se usa en procesadores mucho más pequeños. Procesadores integrados, a menudo MPSoC. Un procesador integrado suele tener un consumo de energía relativamente bajo y está especializado para una tarea específica. Esta especialización a menudo se representa en optimizaciones de hardware. Especialmente en un sistema multiprocesador en un chip, la memoria de alta velocidad compartida puede proporcionar mejoras significativas en la latencia para múltiples procesadores diferentes. Este tipo de CPU a menudo tienen un diseño muy fijo. Las consolas de juegos, por ejemplo, ya ven muchas optimizaciones para el diseño de hardware y, por lo tanto, pueden hacer un buen uso de tales características sin tener que preocuparse por la compatibilidad con versiones anteriores o posteriores.

Conclusión

La memoria Scratchpad es similar a la caché L1 pero tiene una serie de diferencias que cambian sus casos de uso. En lugar de ser un caché, es directamente direccionable, lo que permite que los datos se asignen específicamente a una memoria de alta velocidad. También se comparte entre todos los procesadores y núcleos de procesador, lo que lo hace particularmente útil en cargas de trabajo con muchos subprocesos múltiples.



Leave a Comment

Solución de problemas de Roku no actualiza el software

Solución de problemas de Roku no actualiza el software

Asegúrate de que tu dispositivo Roku funcione correctamente actualizando el software. Aquí tienes soluciones efectivas para el problema de actualizaciones de Roku.

Chromebook: habilitar / deshabilitar el bloqueo de mayúsculas

Chromebook: habilitar / deshabilitar el bloqueo de mayúsculas

Los Chromebook son herramientas versátiles para múltiples propósitos, descubra cómo habilitar y deshabilitar el bloqueo de mayúsculas de manera simple.

¿Qué es un virus del sector de arranque?

¿Qué es un virus del sector de arranque?

Un virus del sector de arranque es un tipo clásico de malware que infecta el sector de arranque de los dispositivos de almacenamiento. Aprende sobre su funcionamiento, identificación y eliminación.

Cómo apagar el sonido del obturador de la cámara - Galaxy S 21 Plus

Cómo apagar el sonido del obturador de la cámara - Galaxy S 21 Plus

Descubre cómo tomar fotos en silencio apagando el sonido del obturador en tu Galaxy S21 Plus. Aprende trucos adicionales para mejorar tus fotografías.

¿Qué es VRAM?

¿Qué es VRAM?

VRAM o Video Random Access Memory es una forma de RAM que se utiliza específicamente para procesadores gráficos. Descubre cómo mejora el rendimiento gráfico.

¿Qué es la seguridad a través de la oscuridad?

¿Qué es la seguridad a través de la oscuridad?

La seguridad a través de la oscuridad se basa en el secreto de un sistema, pero en la actualidad, la seguridad real proviene de la criptografía moderna y de mantener en secreto la clave de cifrado.

Cómo clonar un disco duro

Cómo clonar un disco duro

En la era digital moderna, donde los datos son un activo valioso, clonar un disco duro en Windows puede ser un proceso crucial para muchos. Esta guía completa

¿Cómo reparar el controlador WUDFRd que no se pudo cargar en Windows 10?

¿Cómo reparar el controlador WUDFRd que no se pudo cargar en Windows 10?

¿Se enfrenta al mensaje de error al iniciar su computadora que dice que el controlador WUDFRd no se pudo cargar en su computadora?

Cómo reparar el código de error 0x0003 de la experiencia NVIDIA GeForce

Cómo reparar el código de error 0x0003 de la experiencia NVIDIA GeForce

¿Tiene el código de error 0x0003 de la experiencia NVIDIA GeForce en su escritorio? En caso afirmativo, lea el blog para descubrir cómo solucionar este error de forma rápida y sencilla.

Cómo quitar una GPU de una PC con Windows en 2023

Cómo quitar una GPU de una PC con Windows en 2023

¿Necesitas quitar la GPU de tu PC? Únase a mí mientras explico cómo quitar una GPU de su PC en esta guía paso a paso.