30Jul

Quelle est la quantité maximale de RAM que vous pourriez théoriquement mettre dans un ordinateur 64 bits?

click fraud protection

La plupart des gens passent de l'informatique 32 bits à l'informatique 64 bits pour passer à travers la limite de 4 Go de RAM, mais comment pouvez-vous passer à travers cette limite une fois que vous êtes entré dans le domaine des ordinateurs 64 bits?

Question d'aujourd'hui &La session de réponse nous est offerte par SuperUser, une subdivision de Stack Exchange, un regroupement communautaire de sites Web Q & A.Image de Petr Kratochvil.

La question

SuperUser lecteur KingNestor est curieux de savoir combien de RAM un ordinateur 64 bits peut contenir:

Je lis à travers mon livre d'architecture informatique et je vois que dans un processeur x86, 32 bits, le compteur de programme est de 32 bits.

Donc, le nombre d'octets qu'il peut adresser est de 2 ^ 32 octets, ou 4Go. Donc, il est logique pour moi que la plupart des machines 32 bits limitent la quantité de RAM à 4 Go( en ignorant PAE).

Ai-je raison de supposer qu'une machine 64 bits pourrait théoriquement adresser 2 ^ 64 octets, ou 16 exabytes de ram? !

instagram viewer

Exabytes dites-vous? Maintenant, maintenant, ne soyons pas gourmands. Nous serions heureux de commencer avec un téraoctet ou deux.

La réponse

Les réponses à l'enquête de KingNestor sont un mélange intéressant de considérations pratiques et théoriques. Matt Ball saute avec la réponse théorique:

Théoriquement: 16,8 millions de téraoctets. En pratique: votre boîtier d'ordinateur est un peu trop petit pour s'adapter à toute cette RAM.

http: //en.wikipedia.org/wiki/ 64 bits # Limitations_of_practical_processors

Conrad Dean ajoute une note sur comment il serait totalement impossible de dépasser la limite théorique de RAM en utilisant la technologie actuelle:

Pour compléter la réponse de Matt Ball, le plus gros bâton de RAM que je peuxtrouver sur un détaillant en ligne est de 32GB.Il faudrait 32 d'entre eux pour atteindre 1 téraoctet.À environ un demi-pouce par bâton, cela nous amène à 16 pouces d'espace consacré sur votre carte mère pour un téraoctet de bélier commercial. Pour atteindre 16,8 millions de téraoctets nécessiterait une carte mère 4,242.42 miles. La distance de Los Angeles à New York est d'environ 2141 miles, de sorte que la carte mère s'étendrait à travers le pays et de retour pour accueillir autant de RAM.

Clairement c'est impraticable.

Que diriez-vous de ne pas mettre notre RAM en une seule rangée comme sur la plupart des cartes mères, mais plutôt de les placer côte à côte. Je veux dire que le bâton moyen de bélier est d'environ six pouces de long, donc si nous permettons un demi-pouce de largeur, vous pouvez avoir une unité carrée de 12 bâtons de bélier dans un carré de 6 pouces. Appelons cette case un carreau RAM.Une mosaïque RAM contient alors 384 Go de RAM.Pour atteindre les 16,8 millions de téraoctets requis dans 384 Go de tuiles, il faudrait 44,8 millions de tuiles. Soyons désordonnés, et utilisons la racine carrée pour conclure que cela correspond à un carré de 6693 par 6694 tuiles, ou 13 386 par 13 388 pieds, ce qui est assez proche de 2,5 pieds carrés, assez pour couvrir le centre-ville de Seattle dans l'ombre, comme siils n'avaient pas déjà assez à se plaindre.

Enfin, David Schwartz note que même la limite théorique s'enlise dans l'architecture CPU actuelle:

Notez qu'aucun processeur x86 64 bits existant ne peut réellement le faire. Leurs caches n'ont pas assez de bits de tag, leurs bus d'adresses n'ont pas assez de largeur, et ainsi de suite.46 bits( 8 To) est le maximum pour de nombreux processeurs x86 modernes.

Avoir quelque chose à ajouter à l'explication? Sonnez dans les commentaires. Vous voulez lire plus de réponses d'autres utilisateurs de Stack Exchange? Découvrez le fil de discussion complet ici.