Que é a memoria Scratchpad?

O acceso aos datos é unha parte fundamental do deseño da CPU. As CPU funcionan a velocidades extremadamente altas, procesando varias instrucións en cada ciclo de reloxo e, polo tanto, necesitan acceso a moitos datos. A gran maioría deses datos almacénanse nos medios de almacenamento. Non obstante, os dispositivos de almacenamento son incriblemente lentos en comparación cunha CPU. Os dispositivos de almacenamento tamén son significativamente mellores en lecturas secuenciais que en lecturas aleatorias, aínda que os SSD ofrecen unha notable mellora neste sentido (e moitos outros) con respecto aos discos duros.

A RAM do sistema está deseñada para cargarse con todos os datos que a CPU poida necesitar para o software en execución. A memoria RAM ten unha latencia significativamente menor que o almacenamento, ademais está especialmente adaptada para ter un alto rendemento de lectura aleatoria. Aínda así, por moito que a memoria RAM moderna sexa rápida, aínda non é nada en comparación coa CPU con latencias da orde de 400 ciclos de reloxo.

Para reducir aínda máis a latencia, a maioría das CPU modernas inclúen niveis de memoria caché. Normalmente, estes denomínanse cachés L1, L2 e L3. L1 é realmente alta velocidade, normalmente leva a orde de 5 ciclos de reloxo para acceder. A L2 é un pouco máis lenta, da orde de 20 ciclos. A L3 é aínda máis lenta ao redor de 200 ciclos. Aínda que L1 é incriblemente rápido, tamén é pequeno. Gran parte da súa velocidade vén do feito de que as cachés máis pequenas tardan menos en buscar. L2 é máis grande que L1 pero menor que L3, que é aínda máis pequeno que a RAM do sistema. Equilibrar ben o tamaño destas cachés é fundamental para conseguir unha CPU de alto rendemento. Os índices de acertos da caché son importantes, pero cómpre equilibrar o número de accesos co tempo que tarda en conseguir ese acerto, de aí os niveis.

Memoria Scratchpad

Teña en conta que a memoria de bloc de notas non encaixa na xerarquía de memoria tradicional. Isto é porque non se usa na maioría das CPU de consumo. A memoria Scratchpad está deseñada para ser usada como un Scratchpad sería na vida real. Anota información temporal que precisa lembrar pero que non precisa arquivar. A maior parte do tempo, unha CPU procesa datos e despois necesita ese resultado de novo inmediatamente. Pode copialo na memoria, pero para poder acceder a el rapidamente tamén debería mantelo na caché.

A memoria Scratchpad enche esencialmente o mesmo oco que a caché L1. É accesible o máis rápido posible, a miúdo en contas de ciclos dun só díxitos. Para xestionar isto, tamén é relativamente pequeno. Non obstante, hai dúas diferenzas fundamentais entre a memoria L1 e scratchpad. En primeiro lugar, a memoria do bloc de notas é directamente direccionable. En segundo lugar, compártese entre todos os núcleos e procesadores.

Diferenzas entre caché e bloc de notas

A caché da CPU é esencialmente transparente para a CPU, non pode poñer datos alí deliberadamente e o seu contido non se pode programar. Pola contra, a CPU só solicita datos da RAM e pasa a recuperalos máis rápido, ás veces significativamente máis rápido do que podería esperar. Permitir que o bloc de notas sexa direccionable significa que o código pode especificar exactamente que datos deben estar no bloc de notas. Isto pode ser útil, aínda que os algoritmos de almacenamento en caché modernos son excelentes, con taxas de acertos do 95-97% que se esperan nas cargas de traballo estándar.

A caché L1 sempre está bloqueada nun núcleo de procesamento individual. Ningún outro núcleo de procesamento pode acceder a el. Isto significa que se varios núcleos necesitan os mesmos datos, poden duplicalos nos seus respectivos cachés L1. Nalgunhas arquitecturas de CPU, a L2 é por núcleo, noutras é compartida por un pequeno número ou mesmo por todos os núcleos. A L3 adoita ser compartida por todos os núcleos. Compartir caché entre núcleos permite que dous ou máis núcleos accedan aos mesmos datos sen duplicalos. Tamén permite que un núcleo utilice máis da súa parte xusta cando ten a necesidade e a caché ten espazo.

Scratchpad actúa de forma similar ao L1 en termos de velocidade e capacidade, pero é compartido entre todos os núcleos. Isto permite un acceso moi rápido a datos específicos sobre os que se actúa nunha carga de traballo multiproceso. A memoria Scratchpad pode incluso compartirse entre distintas CPU en placas base multisocket.

Unha desvantaxe que ten a memoria Scratchpad é que se pode confiar demasiado nela. Podendo acceder a el directamente, o software pode depender da súa presenza en certas cantidades. Neste caso, sería incapaz de executarse en CPU sen tanta memoria de bloc de notas. Os niveis de caché simplemente non sofren este problema e, polo tanto, son máis adecuados para o uso de propósito xeral.

Casos de uso

A memoria Scratchpad atópase con máis frecuencia nos sistemas de servidores multisocket deseñados para HPC (High-Performance Computing). Alí, a súa combinación de velocidade e acceso compartido faino útil para cargas de traballo altamente paralelas.

A memoria Scratchpad tamén se usa en procesadores moito máis pequenos. Procesadores integrados, moitas veces MPSoC. Un procesador incorporado adoita ter unha potencia relativamente baixa e está especializado para unha tarefa específica. Esta especialización adoita estar representada nas optimizacións de hardware. Especialmente nun sistema multiprocesador nun chip, a memoria de alta velocidade compartida pode proporcionar melloras significativas na latencia a varios procesadores diferentes. Este tipo de CPU adoitan ter un deseño moi fixo. As consolas de xogos, por exemplo, xa ven moitas optimizacións para o deseño de hardware e, polo tanto, poden facer un bo uso destas funcións sen necesidade de preocuparse pola compatibilidade cara atrás ou cara adiante.

Conclusión

A memoria Scratchpad é semellante á caché L1 pero ten unha serie de diferenzas que cambian os seus casos de uso. En lugar de ser unha caché, é directamente direccionable, permitindo que os datos se asignen especificamente a unha memoria de alta velocidade. Tamén se comparte entre todos os núcleos de procesadores e procesadores, o que o fai especialmente útil en cargas de traballo moi multiprocesos.


Que é SMPS?

Que é SMPS?

Aprende o que é SMPS e o significado das diferentes clasificacións de eficiencia antes de escoller un SMPS para o teu ordenador.

Que é a seguridade baseada no illamento?

Que é a seguridade baseada no illamento?

Imos afondar nun tema cada vez máis importante no mundo da ciberseguridade: a seguridade baseada no illamento. Este enfoque para

Como usar o clic automático para Chromebook

Como usar o clic automático para Chromebook

Hoxe imos afondar nunha ferramenta que pode automatizar tarefas de clic repetitivos no teu Chromebook: o Clicker automático. Esta ferramenta pode aforrar tempo e

Roomba detén, pégase e dá a volta - Solución

Roomba detén, pégase e dá a volta - Solución

Resolve un problema no que o teu robot aspirador Roomba se detén, se pega e segue xirando.

Por que o meu Chromebook non se acende

Por que o meu Chromebook non se acende

Obtén respostas á pregunta Por que non se acende o meu Chromebook? Nesta guía útil para usuarios de Chromebook.

Como cambiar a configuración gráfica en Steam Deck

Como cambiar a configuración gráfica en Steam Deck

O Steam Deck ofrece unha experiencia de xogo robusta e versátil ao teu alcance. Non obstante, para optimizar o teu xogo e garantir o mellor posible

Como cambiar a cara do reloxo nun Fitbit Versa 4

Como cambiar a cara do reloxo nun Fitbit Versa 4

Cambia a esfera do teu Fitbit Versa 4 para darlle ao teu reloxo un aspecto diferente todos os días de forma gratuíta. Mira o rápido e sinxelo que é.

Como denunciar estafas de phishing a Google

Como denunciar estafas de phishing a Google

Aprende a denunciar a un estafador a Google para evitar que estafe a outros con esta guía.

Como eliminar unha GPU do PC con Windows en 2023

Como eliminar unha GPU do PC con Windows en 2023

Necesitas eliminar a GPU do teu PC? Únete a min mentres explico como eliminar unha GPU do teu PC nesta guía paso a paso.

Que é o Shoulder Surf?

Que é o Shoulder Surf?

O hombro surf é unha clase de ataque de enxeñería social. Implica que un atacante recompila información mirando a túa pantalla.