Selon "Ce que chaque programmeur doit savoir à propos de la mémoire", par Ulrich Drepper, vous pouvez effectuer les opérations suivantes sur Linux:
Une fois que nous avons une formule pour la mémoire
exigences, nous pouvons la comparer avec la
taille de la mémoire cache. Comme mentionné avant, le
le cache peut être partagée avec plusieurs
d'autres noyaux. Actuellement, {Il
certainement va très bientôt être un
meilleure façon!} la seule façon d'obtenir
informations correctes sans coder en dur
la connaissance est par le biais de l' /sys
système de fichiers. Dans le Tableau 5.2, nous avons vu
la ce que le noyau publie environ
le matériel. Un programme a trouver
le répertoire:
/sys/devices/system/cpu/cpu*/cache
Ceci est indiqué dans la Section 6: Ce que les Programmeurs Peuvent Faire.
Il a également décrit un essai de droit en vertu de la Figure 6.5, qui peut être utilisé pour déterminer L1D taille du cache si vous ne pouvez pas obtenir à partir de l'OS.
Il y a une chose que j'ai couru à travers, dans son livre: sysconf(_SC_LEVEL2_CACHE_SIZE)
est un appel système sur Linux qui est censé renvoyer le cache L2 de la taille, bien qu'il ne semble pas à être bien documentée.