Une diatribe enflammée à propos des pointeurs 64 bits
C'est absolument idiot de disposer de pointeurs sur 64 bits quand je compile un programme qui utilise moins de 4 gigabytes de mémoire vive. Lorsque des valeurs de pointeur de ce genre apparaissent dans une structure (NdT : structure type langage C je pense) , elles ne gâchent pas seulement la moitié de la mémoire vive, mais elles foutent également à la poubelle la moitié de la mémoire cache.
La page de manuel de GCC prévient qu'il existe une option "-mlong32" qui semble correspondre à ce que je veux utiliser. En effet, je pensais qu'elle allait compiler le code pour mon architecture x86-64, en utilisant les avantages des extra-registres (NdT : propres aux x86-64) etc, mais en permettant à mon programme d'exister dans un espace d'dressage virtuel de 32 bits. Malheureusement, l'option -mlong32 a été introduite pour les ordinateurs MIPS, il y a des années. Probablement qu'elle n'est jamais utilisée parce que les programmes qui sont compilés avec auront besoin d'être chargé avec une version spécial de la libc.
S'il vous plaît , quelqu'un. Essayez de transformer mon voeux en réalité.
[^] # Re: la vraion raison
Posté par dkremer . En réponse au journal Flash version 64 bits pour linux exclusivement!. Évalué à 3.
lien : http://www-cs-faculty.stanford.edu/~knuth/news.html
traduction :
A Flame About 64-bit Pointers
Une diatribe enflammée à propos des pointeurs 64 bits
C'est absolument idiot de disposer de pointeurs sur 64 bits quand je compile un programme qui utilise moins de 4 gigabytes de mémoire vive. Lorsque des valeurs de pointeur de ce genre apparaissent dans une structure (NdT : structure type langage C je pense) , elles ne gâchent pas seulement la moitié de la mémoire vive, mais elles foutent également à la poubelle la moitié de la mémoire cache.
La page de manuel de GCC prévient qu'il existe une option "-mlong32" qui semble correspondre à ce que je veux utiliser. En effet, je pensais qu'elle allait compiler le code pour mon architecture x86-64, en utilisant les avantages des extra-registres (NdT : propres aux x86-64) etc, mais en permettant à mon programme d'exister dans un espace d'dressage virtuel de 32 bits. Malheureusement, l'option -mlong32 a été introduite pour les ordinateurs MIPS, il y a des années. Probablement qu'elle n'est jamais utilisée parce que les programmes qui sont compilés avec auront besoin d'être chargé avec une version spécial de la libc.
S'il vous plaît , quelqu'un. Essayez de transformer mon voeux en réalité.
NdT : Désolé pour la traduction approximative