Bonjour,
J'ai une question de culture geek:
Il y a quelques temps j'avais lu un thread parlant de l'optimisation et de l'alignement mémoire.
Et un type disait que sur X86 la plus petite unité qu'on pouvait allouer physiquement c’était 4 octets
Ce qui fait que physiquement en RAM un int ou un bool occupent la même place sur une archi X86. Même si leur représentation est différente.
Est ce vrai en C et en Csharp ? Je n'arrive pas à trouver les sources qui confirment ca. C'est plus flou en .Net / qui passe par une VM.
source du thread avec un type sérieux Mac LAK:
http://www.developpez.net/forums/d75...nce-decevante/
Merci pour vos lumièresCommence déjà par analyser la dispersion en mémoire de tes éléments, ainsi que leur alignement. N'oublie pas : pour lire un octet en RAM, tu en lis TOUJOURS au minimum quatre, le mot-mémoire complet... Mais tu n'en utilises qu'un seul, ce qui est une perte de temps lourde si jamais tu as des invalidations de cache qui se goupillent mal.
Partager