41 votes

Quelle est l'importance d'avoir des programmes 64 bits sur un système d'exploitation 64 bits ?

Je viens de passer à un système d'exploitation 64 bits (Windows 7) depuis ma vieille version 32 bits. J'ai remarqué que bien que de nombreuses applications soient disponibles en 64 bits (par exemple DC client, Tortoise SVN, driver graphique), beaucoup sont encore des applications 32 bits (par exemple firefox, adobe reader).

Alors, quelle est l'importance d'avoir des applications 64 bits (en termes de performances) ? J'utilise mon ordinateur portable pour différentes activités comme les jeux, la programmation, etc.

36voto

Majenko Points 31077

Je ne pense pas que ce soit si important d'avoir des applications 64 bits en soi.

L'avantage d'avoir une application 64 bits est qu'elle peut :

  • Accéder à beaucoup plus de mémoire¹
  • Effectuer des opérations de registre 64 bits.²

¹ Un programme 64 bits peut être un peu plus rapide (selon son fonctionnement). Si votre application consomme beaucoup de mémoire (comme Photoshop, le rendu 3D, etc.), avoir une version 64 bits lui donnera accès à toute la mémoire de l'ordinateur. Sans cela, elle sera limitée à environ 2 Go. C'est sur une base par application, donc deux applications peuvent accéder à un total de 4 Go.

² Effectuer une opération 64 bits sur un système d'exploitation 64 bits est plus rapide que de l'exécuter sur un système d'exploitation 32 bits - il faudrait au moins 2 opérations 32 bits pour faire la même chose.

En termes de stabilité, il ne devrait y avoir aucune différence entre les applications 64 bits et 32 bits.

11voto

alastairs Points 3045

Le plus grand avantage d'utiliser une application 64 bits sur un OS 64 bits est que vous avez un accès complet à toute la mémoire disponible sur le système. Avec des adresses mémoire 64 bits, l'application peut accéder à plus de mémoire que son équivalent 32 bits.

De plus, les programmes 64 bits fonctionneront "mieux" que ceux en 32 bits car ils utilisent l'architecture système native. Les opérations telles que les lectures mémoire sont effectuées nativement, etc. Cela signifie que le système d'exploitation n'a pas à effectuer de travail supplémentaire de "traduction" (emballage/déballage de la mémoire, etc.) des commandes utilisées par l'application.

Cependant, la plupart des programmes - tels que Firefox, Word, Adobe Reader, etc. - passent la plupart de leur temps à attendre une entrée utilisateur, donc l'efficacité n'est pas nécessairement une préoccupation majeure. De plus, la plupart de ces applications (pour le moment) n'ont pas besoin de la mémoire supplémentaire à laquelle l'accès en 64 bits les mènerait.

Les programmes tels que les pilotes graphiques doivent travailler de manière efficiente et peut-être avoir accès à des registres mémoire plus élevés, donc ils ont besoin d'être en 64 bits.

5voto

Rick Henderson Points 111

Oui, vous pouvez exécuter sans problème les applications 32 bits sur votre système d'exploitation 64 bits, MAIS. Il y a un autre problème de gaspillage d'espace - les bibliothèques. Fondamentalement, une application chargerait la bibliothèque appropriée dont elle a besoin, mais le problème est que les bibliothèques 64 bits ne sont pas compatibles avec les bibliothèques 32 bits, et vice versa.

En général, les bibliothèques nécessaires sont livrées avec l'application elle-même, mais les principales - celles de Windows - sont stockées deux fois - l'une d'entre elles - la 32 bits, et l'autre - la 64 bits.

Elles occupent également plus de mémoire sur la RAM si vous avez une application 32 bits et une autre 64 bits en cours d'exécution simultanément - les deux applications chargent leur propre version de bibliothèque et utilisent donc plus de RAM que ce qu'elles pourraient utiliser si elles utilisaient la même bibliothèque.

Donc, pour économiser la RAM et l'espace disque dur - essayez d'exécuter et d'installer uniquement des applications 64 bits, et n'installez des applications 32 bits que si vous ne trouvez pas de version 64 bits. Maintenant, de plus en plus d'applications sont livrées dans les deux versions.

4voto

jackrabbit Points 2990

La réponse est "ça dépend"

Certaines 'applications' 32 bits ne fonctionneront pas en mode 64 bits, par exemple les pilotes graphiques et les extensions de shell (comme Tortoise SVN). Dans un tel cas, vous avez besoin d'une version 64 bits.

Pour d'autres applications normales, alors ça dépend de ce qu'elles font.

Si vous avez, par exemple, 16 Go de mémoire et que vous exécutez SQL Server avec une très grande base de données, alors avoir une version 64 bits de SQL est très important.

Si, cependant, vous avez 4 Go de mémoire (avec presque 1 Go 'volé' par la carte vidéo), alors vous pourriez manquer de mémoire et l'utilisation d'applications 64 bits (qui peuvent nécessiter plus de mémoire) pourrait en fait ralentir votre système.

Même en ignorant les considérations de mémoire, vous ne pouvez pas affirmer avec certitude qu'une application 32 bits exécutée en mode 64 bits sera plus rapide ou plus lente que l'équivalent 64 bits, ni si l'application sera plus rapide ou plus lente que lorsqu'elle est exécutée sur un système d'exploitation 32 bits.

Personnellement, lorsque je recherche un utilitaire ou une petite application pour ma machine, je vérifie qu'elle fonctionne avec un système d'exploitation 64 bits, mais le fait que l'application soit 32 bits ou 64 bits n'est généralement pas en haut de ma liste de priorités.

Selon Process Explorer, j'ai actuellement 25 processus 64 bits et 28 processus 32 bits en cours d'exécution, en ignorant Chrome

3voto

Adam Lawrence Points 298

Gardez à l'esprit que sur Windows 64 bits, les applications 32 bits sont exécutées à travers une couche d'émulation appelée WOW64, ce qui impose certaines limitations supplémentaires qui ne sont pas présentes lors de l'exécution sous un OS Windows 32 bits.

De https://msdn.microsoft.com/fr-fr/library/aa384219(v=vs.85).aspx:

Performance et consommation de mémoire sous WOW64

  • Matériel processeur. L'émulation des instructions est effectuée sur la puce. Sur le processeur x64, les instructions sont exécutées nativement par la micro-architecture. Par conséquent, la vitesse d'exécution sous WOW64 sur x64 est similaire à sa vitesse sous Windows 32 bits. Sur le processeur Intel Itanium, plus de logiciels sont impliqués dans l'émulation, et les performances en souffrent par conséquent.

  • Ouverture de l'API. Ce surcoût est faible par rapport à l'appel du noyau NT lui-même. Les fonctions du noyau NT sont censées être appelées rarement.

  • Taille de la mémoire virtuelle. Sur le processeur Intel Itanium, WOW64 ajoute un surcoût significatif si deux instances ou plus de la même application 32 bits s'exécutent simultanément. Cela est dû aux pages natives de 8 Ko sur l'Intel Itanium, ce qui complique l'émulation des pages natives de 4 Ko sur l'architecture x86 (plus de pages sont marquées comme inscriptibles; toutes les pages inscriptibles sont privées au processus). Cela peut affecter négativement la mise à l'échelle des Services Terminal sur certains processeurs. Ce n'est pas le cas pour le processeur x64.

  • Ensemble de travail. WOW64 augmente la taille de l'ensemble de travail de l'application.

  • WOW64 permet aux applications 32 bits de tirer parti du noyau 64 bits. Par conséquent, les applications 32 bits peuvent utiliser un plus grand nombre de poignées de noyau et de poignées de fenêtre. Cependant, les applications 32 bits peuvent ne pas être en mesure de créer autant de threads sous WOW64 que lorsqu'elles s'exécutent nativement sur des systèmes x86 car WOW64 alloue une pile supplémentaire de 64 bits (généralement 512 Ko) pour chaque thread. De plus, une certaine quantité d'espace d'adressage est réservée pour WOW64 lui-même et les structures de données qu'il utilise. La quantité réservée dépend du processeur ; plus en est réservée sur l'Intel Itanium que sur le processeur x64.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X