web-dev-qa-db-fra.com

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

J'ai récemment mis à niveau un système d'exploitation 64 bits (Windows 7) à partir de mon ancienne version 32 bits. J'ai remarqué que, même si plusieurs applications sont disponibles en 64 bits (par exemple, le client _ DC, Tortoise SVN, le pilote graphique), beaucoup sont encore des applications 32 bits (par exemple, firefox, Adobe Reader).

Dans quelle mesure est-il important d’avoir des applications 64 bits (en termes de performances)? J'utilise mon ordinateur portable pour différentes choses comme les jeux, le codage, etc.

38
apoorv020

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

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

  • Accédez à 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 a besoin de beaucoup de mémoire (Photoshop, rendu 3D, etc.), le fait de disposer d'une version 64 bits lui donnera accès à toute la mémoire de l'ordinateur. Sans cela, il sera limité à environ 2 Go. C'est sur par application, de sorte que 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 sur un système d'exploitation 32 bits - il faudrait au moins 2 opérations 32 bits pour effectuer la même chose.

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

33
Majenko

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

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

Cependant, la plupart des programmes (tels que Firefox, Word, Adobe Reader, etc.) passent le plus clair de leur temps à attendre l'intervention de l'utilisateur. L'efficacité n'est donc pas une préoccupation majeure. De plus, la plupart de ces applications (pour le moment) ne requièrent pas la mémoire supplémentaire à laquelle l'accès en 64 bits leur donnerait accès.

Des programmes tels que les pilotes graphiques doivent fonctionner efficacement et ont peut-être accès à des registres de mémoire plus importants et doivent donc être au format 64 bits.

10
ChrisF

Oui, vous pouvez exécuter sans problème les applications 32 bits de votre système d'exploitation 64 bits, MAIS. Il y a un autre problème de gaspillage d'espace - les bibliothèques. En gros, 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 32 bits, et inversement.

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

Elles occupent également plus de mémoire sur RAM si vous avez une application 32 bits et une autre 64 bits s'exécutant simultanément - les deux applications ont chargé leur propre version de bibliothèque et utilisent donc plus de RAM pourrait si ils utilisaient tous les deux la même bibliothèque.

Par conséquent, pour économiser RAM et l’espace disque, essayez d’exécuter et d’installer des applications 64 bits uniquement, et d’installer des applications 32 bits uniquement si vous ne pouvez pas trouver une version 64 bits. Maintenant, de plus en plus d'applications sont livrées dans les deux versions.

5
Evengard

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 Shell (telles que Tortoise SVN). Dans ce cas, vous avez besoin d'une version 64 bits.

Pour d'autres applications normales, cela dépend de ce qu'elles font.

Si vous disposez par exemple de 16 Go de mémoire et que vous utilisez un serveur SQL avec une base de données extrêmement volumineuse, il est très important d’avoir une version 64 bits de SQL.

Si, toutefois, vous disposez de 4 Go de mémoire (dont près de 1 Go volé par la carte vidéo), il est possible que vous manquiez de mémoire et que vous utilisiez des applications 64 bits (ce qui pourrait nécessiter davantage de mémoire) risquerait de 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 s'exécutant en mode 64 bits sera plus rapide ou plus lente que son équivalent en 64 bits, ni si l'application sera plus rapide ou plus lente que lorsqu'elle est exécutée sur un ordinateur 32 bits. système d'exploitation à bits.

Personnellement, si je recherche un utilitaire ou une petite application pour ma machine, je vérifierai que cela fonctionne avec un système d'exploitation 64 bits, mais que l'application soit 32 bits ou 64 bits ne figure pas normalement 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).

4
sgmoore

N'oubliez pas que sous Windows 64 bits, les applications 32 bits sont exécutées via une couche d'émulation appelée WOW64 , qui impose certaines limitations supplémentaires qui n'existaient pas sous un système d'exploitation Windows 32 bits.

De https://msdn.Microsoft.com/en-us/library/aa384219 (v = vs.85) .aspx :

Performances et consommation de mémoire sous WOW64

  • Processeur. L'émulation d'instruction est effectuée sur la puce. Sur le processeur x64, les instructions sont exécutées de manière native 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, davantage de logiciels sont impliqués dans l'émulation, ce qui nuit aux performances.
  • Thunk API frais généraux. Cette surcharge est minime comparée à l’appel du noyau NT lui-même. Les fonctions du noyau NT sont appelées rarement.
  • Taille de la mémoire virtuelle. Sur le processeur Intel Itanium, WOW64 ajoute une surcharge considérable si plusieurs instances de la même application 32 bits s'exécutent simultanément. Cela est dû aux pages natives de 8 Ko sur Intel Itanium, ce qui complique l’émulation des pages natives de 4 Ko sur l’architecture x86 (plus de pages sont marquées en écriture, toutes les pages en écriture sont privées du processus). Cela peut nuire à l'évolutivité des services Terminal Server sur certains processeurs. Ce n'est pas le cas pour le processeur x64.
  • Ensemble de travail. WOW64 augmente la taille du groupe 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 descripteurs de noyau et de descripteurs de fenêtre. Toutefois, les applications 32 bits peuvent ne pas être en mesure de créer autant de threads sous WOW64 que lors de leur exécution native sur des systèmes x86, car WOW64 alloue une pile 64 bits supplémentaire (généralement 512 Ko) pour chaque thread. De plus, une certaine quantité d’espace d’adresse est réservée à WOW64 et aux structures de données qu’il utilise. Le montant réservé dépend du processeur. plus est réservé sur le processeur Intel Itanium que sur le processeur x64.

3
Adam Lawrence

Ne permet pas de couper ce court. Roches 64 bits. Si vous pouvez l'obtenir, utilisez-le. Visual Studio, SQL Server (même en utilisant seulement Management Studio) bénéficient tous d’une version 64 bits en cours d’exécution. Vous ne pouvez pas dire que ça n'en vaut pas la peine. Non, ce n'est pas une nécessité, mais nous devrions chercher à améliorer la vitesse sur les ordinateurs portables et les ordinateurs portables des développeurs et des autres utilisateurs (même les non-initiés qui utilisent un simple MS Word). Pourquoi ne pas en profiter, promouvoir et parler en 64 bits dans votre entreprise? Ce n'est vraiment plus si nouveau… ça devient ou a été banal.

C'est ridicule de dire que vous ne tirez pas grand profit de la version 64 bits, tout comme il est ridicule de me dire que l'ajout de 4 concerts pour compléter un total de 8 concerts sur n'importe quel ordinateur portable, tout utilisateur n'en vaut pas la peine. C’est là un autre exemple d’administrateurs ou d’administrateurs de réseaux informatiques gloutons dans lesquels la mise à niveau vers une version 64 bits est généralement gratuite, puis pour la RAM, elle est ridiculement économique et améliore de deux fois la productivité de votre utilisateur.

Donc non, ce n'est pas un must mais devrait l'être. Je n'aime pas les minimalistes en ce qui concerne des outils tels que les ordinateurs de bureau et les ordinateurs portables.

Je ne suis vraiment pas d'accord quand les gens disent que les applications 64 bits sont une chose avec laquelle il faut toujours être très "prudent" avec… du moins pas autant que lors de sa sortie, c'est certain.

Si le 64-bit était un tel problème, la plupart des ordinateurs de bureau et des ordinateurs portables actuels ne migreraient pas vers la version 64-bit Win 7. Toute notre entreprise propose Win 7 Pro 64-bit à TOUS les utilisateurs (plus de 100 000 employés).

1
WeDoTDD.com

Cela dépend entièrement de l'application. La plupart des applications fonctionnent exactement de la même manière en 32 bits qu'en 64 bits. Pour les applications où cela compte vraiment, vous saurez certainement que les versions 32 bits sont limitées et qu'il n'est pas nécessaire de poser la question.

Un aspect à prendre en compte est le moment où une application possède une version 64 bits avec un support tiers médiocre. Je pense à Excel 2010 qui est disponible au format 64 bits. Excel 64 lui-même fonctionne parfaitement bien, mais peu d’extensions et d’add-ons tiers ont été portés. Comme autre exemple, considérons Python sous Windows. Encore une fois, un certain nombre de modules non essentiels importants ne sont pas disponibles ou difficiles à obtenir sous forme 64 bits.

Donc, à moins que vous ayez vraiment besoin de 64 bits pour l’application en question, vous pouvez souvent être plus en sécurité avec la version 32 bits.

0
David Heffernan