¿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

Qué Hacer Si Powerbeats Pro No Carga en el Estuche

Qué Hacer Si Powerbeats Pro No Carga en el Estuche

Si tus Powerbeats Pro no cargan, utiliza otra fuente de energía y limpia tus auriculares. Deja el estuche abierto mientras cargas tus auriculares.

Fundamentos de Impresión 3D: Una Lista de Verificación de Mantenimiento Imprescindible

Fundamentos de Impresión 3D: Una Lista de Verificación de Mantenimiento Imprescindible

Mantener tu equipo en buen estado es fundamental. Aquí hay algunos consejos útiles para mantener tu impresora 3D en óptimas condiciones.

Canon Pixma MG5220: Escanear Sin Tinta

Canon Pixma MG5220: Escanear Sin Tinta

Cómo habilitar el escaneo en la Canon Pixma MG5220 cuando se queda sin tinta.

5 Razones por las Que Tu Portátil Se Está Sobrecalentando

5 Razones por las Que Tu Portátil Se Está Sobrecalentando

Descubre algunas de las posibles razones por las que tu portátil se está sobrecalentando, junto con consejos y trucos para evitar este problema y mantener tu dispositivo fresco.

Cómo instalar un SSD en PCs de escritorio y portátiles

Cómo instalar un SSD en PCs de escritorio y portátiles

¿Acabas de comprar un SSD con la esperanza de mejorar el almacenamiento interno de tu PC, pero no sabes cómo instalarlo? ¡Lee este artículo ahora!

Cómo solucionar el código de error 0xC272008F de GeForce Now

Cómo solucionar el código de error 0xC272008F de GeForce Now

Te estás preparando para una noche de juegos y va a ser una gran noche: acabas de conseguir “Star Wars Outlaws” en el servicio de streaming GeForce Now. Descubre la única solución conocida que te muestra cómo arreglar el error 0xC272008F de GeForce Now para que puedas empezar a jugar los juegos de Ubisoft nuevamente.

Fundamentos de la Impresión 3D: Consejos de Mantenimiento para su Impresora 3D

Fundamentos de la Impresión 3D: Consejos de Mantenimiento para su Impresora 3D

Mantener sus impresoras 3D es muy importante para obtener los mejores resultados. Aquí hay algunos consejos importantes a tener en cuenta.

Cómo encontrar la dirección IP de una impresora

Cómo encontrar la dirección IP de una impresora

¿Tienes problemas para averiguar cuál es la dirección IP de tu impresora? Te mostraremos cómo encontrarla.

Cómo usar AirPods con teléfonos Samsung

Cómo usar AirPods con teléfonos Samsung

Si tienes dudas sobre si comprar AirPods para tu teléfono Samsung, esta guía te ayudará. La pregunta más obvia es si son compatibles, y la respuesta es: ¡sí, lo son!

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.