Que é a memoria compartida?

Os ordenadores modernos teñen moita memoria. Cada CPU ten a súa caché e cada programa en execución ten asignada a súa parte da RAM do sistema. Hai moitas formas diferentes de usar e asignar esta memoria. A memoria compartida é un concepto que afecta tanto á memoria caché da CPU como ao uso da memoria RAM do sistema de diferentes xeitos.

Memoria compartida no hardware

A maioría das CPU modernas teñen tres niveis de caché, denominados L1, L2 e L3. L1 é a caché máis pequena e rápida, mentres que L3 é a máis grande e lenta. Non obstante, todos son máis rápidos que acceder á memoria principal, polo que a taxa de acertos é fundamental para o rendemento. Moitos factores fan que a caché L1 sexa máis rápida que a L3. En primeiro lugar, as células de memoria L1 son fisicamente máis grandes. Tamén hai menos deles e están situados moito máis preto do núcleo da CPU, moitas veces dentro del.

Colocar un bloque de caché dentro da área de matriz dun núcleo supón unha complexidade adicional nas CPU multinúcleo. Neste punto, podes optar por ter unha caché en cada núcleo ou fóra dos núcleos, concretamente entre eles. Cada un ten os seus beneficios e inconvenientes.

Colocar unha caché nun núcleo minimiza a latencia de acceso, pero tamén significa que cada núcleo necesita a súa caché. Isto significa que pode acabar con liñas de caché duplicadas nas cachés L1 de diferentes núcleos, reducindo a eficiencia do espazo da caché. Isto chámase caché local e, aínda que é excelente para o tempo de acceso, é menos eficiente no uso do espazo da caché e require unha sobrecarga adicional en termos de coherencia da caché.

Unha caché compartida é unha caché que está dispoñible para varios ou todos os núcleos dunha CPU multinúcleo. Unha caché compartida significa que varios núcleos poden acceder a unha instancia de datos específicos, o que limita o espazo perdido debido á duplicación. Tamén significa que un núcleo pode reclamar temporalmente máis da súa parte xusta de espazo de caché se o necesita, mentres que os outros núcleos non o fan. Isto supón un aumento do tempo de acceso.

Cachés compartidos na práctica

As CPU modernas usan ambos conceptos, tendo cada núcleo unha caché L1 local. A caché L3 adoita compartirse entre moitos núcleos, aínda que ás veces non todos. A L2 varía pero pode ser local ou compartida dependendo da arquitectura específica de xeración da CPU.

Consello: para as CPU de chiplet como os modelos AMD Ryzen de gama alta, as cachés poden compartirse entre todos os núcleos dun chiplet en lugar de con todos os núcleos de toda a CPU. Non importa cantos núcleos se comparta unha caché; aínda que só sexan dous, aínda é unha caché compartida, aínda que cabe destacar que só se comparte parcialmente.

Nota: A RAM do sistema tamén se pode compartir entre varias CPU físicas nunha única placa base ou entre nodos dun sistema de varias CPU.

Memoria compartida no software

Nos ordenadores modernos, o software non se dirixe directamente á memoria física. Pola contra, asígnaselle un segmento de enderezo virtual e o ordenador traduce estes enderezos virtuais aos enderezos físicos segundo sexa necesario. Isto axuda a illar a memoria para procesos individuais, o que é útil para a seguridade.

Nalgúns casos, pode ser desexable transferir datos na memoria dun proceso a outro. A forma máis eficiente de facelo é permitir que os dous procesos compartan espazo de memoria. Deste xeito, ambos procesos poden ler os mesmos datos e comunicarse entre si. Isto tamén axuda a utilizar a memoria RAM do sistema de forma eficiente xa que os datos non se duplican.

A memoria compartida polo software normalmente conseguirase mantendo unha copia física dos datos e mapeando o acceso a ela a través da memoria virtual para cada proceso que necesite acceder a ela.

Conclusión

A memoria compartida é o concepto de ter unha sección de memoria accesible por varias cousas. Isto pódese implementar tanto en hardware como en software. A caché da CPU pódese compartir entre varios núcleos de procesador. Este é especialmente o caso dos niveis máis altos de caché da CPU. A memoria do sistema tamén se pode compartir entre varias CPU físicas nun único sistema máis grande.

No software, a memoria compartida pode permitir a comunicación entre procesos IPC. Un proceso asigna memoria como compartida con un ou máis procesos específicos. Eses outros procesos poden acceder a esa localización de memoria mediante a asignación de memoria virtual. A memoria compartida axuda a garantir un uso eficiente do espazo de memoria evitando a duplicación de datos nun espazo limitado.


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.