Quest-ce que la mémoire partagée ?

Les ordinateurs modernes ont beaucoup de mémoire. Chaque processeur a son cache et chaque programme en cours d'exécution se voit attribuer sa partie de la RAM système. Il existe de nombreuses façons différentes d'utiliser et d'affecter cette mémoire. La mémoire partagée est un concept qui affecte à la fois les caches CPU et l'utilisation de la RAM système de différentes manières.

Mémoire partagée dans le matériel

La plupart des processeurs modernes ont trois niveaux de cache, appelés L1, L2 et L3. L1 est le cache le plus petit et le plus rapide, tandis que L3 est le plus grand et le plus lent. Cependant, tous sont plus rapides que l'accès à la mémoire principale, ce qui rend le taux de réussite critique pour les performances. De nombreux facteurs rendent le cache L1 plus rapide que L3. Tout d'abord, les cellules de mémoire L1 sont physiquement plus grandes. Il y en a également moins et ils sont situés beaucoup plus près du cœur du processeur, souvent à l'intérieur de celui-ci.

Le placement d'un bloc de cache dans la zone de matrice d'un cœur s'accompagne d'une complexité supplémentaire sur les processeurs multicœurs. À ce stade, vous pouvez choisir d'avoir un cache dans chaque cœur ou en dehors des cœurs, en particulier entre eux. Chacun a ses avantages et ses inconvénients.

Placer un cache dans un cœur minimise la latence d'accès, mais cela signifie également que chaque cœur a besoin de son cache. Cela signifie que vous pouvez vous retrouver avec des lignes de cache dupliquées dans les caches L1 de différents cœurs, ce qui réduit l'efficacité de l'espace de cache. C'est ce qu'on appelle un cache local, et bien qu'il soit excellent pour le temps d'accès, il est moins efficace dans l'utilisation de l'espace de cache et nécessite une surcharge supplémentaire en termes de cohérence du cache.

Un cache partagé est un cache disponible pour plusieurs ou tous les cœurs d'un processeur multicœur. Un cache partagé signifie que plusieurs cœurs peuvent accéder à une instance de données spécifiques, limitant ainsi l'espace perdu en raison de la duplication. Cela signifie également qu'un cœur peut temporairement réclamer plus que sa juste part de l'espace de cache s'il en a besoin, tandis que les autres cœurs ne le font pas. Cela se fait au prix d'un temps d'accès accru.

Caches partagés en pratique

Les processeurs modernes utilisent les deux concepts, chaque cœur ayant un cache L1 local. Le cache L3 a tendance à être partagé entre de nombreux cœurs, mais parfois pas tous. L2 varie mais peut être local ou partagé en fonction de l'architecture de génération de CPU spécifique.

Conseil : pour les processeurs à puces tels que les modèles AMD Ryzen haut de gamme, les caches peuvent être partagés entre tous les cœurs d'un chiplet plutôt qu'avec tous les cœurs de l'ensemble du processeur. Peu importe le nombre de cœurs entre lesquels un cache est partagé ; même s'il n'y en a que deux, il s'agit toujours d'un cache partagé, même s'il peut être utile de souligner qu'il n'est que partiellement partagé.

Remarque : la RAM système peut également être partagée entre plusieurs CPU physiques sur une seule carte mère ou entre les nœuds d'un système multi-CPU.

Mémoire partagée dans le logiciel

Dans les ordinateurs modernes, le logiciel ne parvient pas à adresser directement la mémoire physique. Au lieu de cela, un segment d'adresse virtuelle lui est attribué et l'ordinateur traduit ces adresses virtuelles en adresses physiques selon les besoins. Cela aide à isoler la mémoire pour les processus individuels, ce qui est utile pour la sécurité.

Dans certains cas, il peut être souhaitable de transférer des données en mémoire d'un processus à un autre. La façon la plus efficace de le faire est de permettre aux deux processus de partager l'espace mémoire. De cette façon, les deux processus peuvent lire les mêmes données et communiquer entre eux. Cela permet également d'utiliser efficacement la RAM du système car les données ne sont pas dupliquées.

La mémoire partagée par logiciel sera généralement obtenue en conservant une copie physique des données et en mappant l'accès à celle-ci via la mémoire virtuelle pour chaque processus qui a besoin d'y accéder.

Conclusion

La mémoire partagée est le concept d'avoir une section de mémoire accessible par plusieurs choses. Cela peut être implémenté à la fois dans le matériel et le logiciel. Le cache du processeur peut être partagé entre plusieurs cœurs de processeur. C'est particulièrement le cas pour les niveaux supérieurs de cache CPU. La mémoire système peut également être partagée entre divers processeurs physiques dans un seul système plus grand.

Dans le logiciel, la mémoire partagée peut permettre la communication inter-processus IPC. Un processus alloue de la mémoire partagée avec un ou plusieurs processus spécifiques. Ces autres processus peuvent ensuite accéder à cet emplacement mémoire via le mappage de mémoire virtuelle. La mémoire partagée permet d'assurer une utilisation efficace de l'espace mémoire en évitant la duplication des données dans un espace limité.



Leave a Comment

Comment cloner un disque dur

Comment cloner un disque dur

À l’ère numérique moderne, où les données constituent un atout précieux, le clonage d’un disque dur sous Windows peut être un processus crucial pour beaucoup. Ce guide complet

Comment réparer le pilote WUDFRd qui n’a pas pu se charger sous Windows 10 ?

Comment réparer le pilote WUDFRd qui n’a pas pu se charger sous Windows 10 ?

Êtes-vous confronté au message d'erreur lors du démarrage de votre ordinateur indiquant que le pilote WUDFRd n'a pas pu se charger sur votre ordinateur ?

Comment réparer le code derreur 0x0003 de NVIDIA GeForce Experience

Comment réparer le code derreur 0x0003 de NVIDIA GeForce Experience

Rencontrez-vous le code d’erreur 0x0003 de l’expérience NVIDIA GeForce sur votre bureau ? Si oui, lisez le blog pour savoir comment corriger cette erreur rapidement et facilement.

How to Use Auto Clicker for Chromebook

How to Use Auto Clicker for Chromebook

Today, were going to delve into a tool that can automate repetitive clicking tasks on your Chromebook: the Auto Clicker. This tool can save you time and

Comment supprimer un GPU dun PC Windows en 2023

Comment supprimer un GPU dun PC Windows en 2023

Avez-vous besoin de retirer le GPU de votre PC ? Rejoignez-moi pour expliquer comment supprimer un GPU de votre PC dans ce guide étape par étape.

Comment installer un SSD NVMe sur un ordinateur de bureau et un ordinateur portable

Comment installer un SSD NVMe sur un ordinateur de bureau et un ordinateur portable

Vous avez acheté un nouveau SSD NVMe M.2 mais vous ne savez pas comment l'installer ? Lisez la suite pour savoir comment installer un SSD NVMe sur un ordinateur portable ou un ordinateur de bureau.

Quest-ce quune bombe logique ?

Quest-ce quune bombe logique ?

Une bombe logique est un incident de sécurité où un attaquant met en place une action différée. Continuez à lire pour en savoir plus.

Quest-ce que Stuxnet ?

Quest-ce que Stuxnet ?

Stuxnet était un ver auto-propagé. Il s'agissait de la première utilisation d'une cyber-arme et du premier malware.

Quest-ce quun hacker éthique ?

Quest-ce quun hacker éthique ?

Un hacker éthique est un hacker qui agit dans les limites de la loi. Continuez à lire pour en savoir plus sur le sujet.

Quest-ce que le chiffrement symétrique ?

Quest-ce que le chiffrement symétrique ?

Il existe de nombreuses parties différentes de la cryptographie. Si vous souhaitez chiffrer certaines données, vous pouvez utiliser deux types d'algorithmes : symétrique