Nous sommes le Mar 24 Juin, 2025 18:18
Supprimer les cookies

pourquoi passer au 64 bits ?

Perdu dans la migration ? Demandez votre chemin, on peut peut-être vous aider.

Lun 23 Oct, 2006 10:18

Bonjour,

j'ai remplacé mon vénérable duron 1 GHz. Ma nouvelle UC, assemblée maison (donc sans OS imposé), est composée d'un processeur AMD sempron 3000+ supportant les instructions 64 bits, monté sur une carte mère asus K8N4-E Deluxe. Le tout est pour l'instant accompagné de 512 Mo de RAM et est sensé être compatible linux.
Ma question est la suivante: maintenant que ma machine peut supporter du 64 bits, y'a-t-il un réel avantage à abandonner le système 32 bits qui marche si bien (j'étais très satisfait de ma SuSe, et de mon essai d'Ubuntu) ? Aucun message posté n'indique une réelle motivation pour passer au 64 bits ?
Mon utilisation est domestique, mais polyvalente (bureautique, internet, visualisation de films, un peu de jeux). Je ne m'interdis pas non plus des applications de calcul scientifique, ou encore un peu de montage video / audio, mais de façon occasionnelle. Les applis spécifiques 64 bits sont encore limitées, et je n'ai aucune idée ni avis éclairé sur les avantages d'une compilation 64 bits (Plus d'utilisation mémoire et moins de conso CPU ?).

Merci pour vos avis et vos arguments.

Cordialement,
Droopy
Droopy_37

Messages : 72
Géo : Tours

Lun 23 Oct, 2006 11:33

Pour le moment l'inconvénient majeur des version 64bits, c'est qu'il n'y a pas certains paquets, surtout proprio, genre Flash, les w32codecs... Certaines applis ne sont pas non plus compilées en 64its pour être dans les dépôts.
C'est toujours possible de les faire fonctionner, mais ce n'est pas toujours simple.
Quand tout le reste a échoué, lisez le mode d'emploi.
yostral

Avatar de l’utilisateur
Messages : 5403
Géo : Là-haut dans la montagne...

Lun 23 Oct, 2006 13:12

Pour tous ce que t'a dit yostral, il vaut mieu rester en 32bit pour la bureautique.
Mais bon, rien ne t'empechera d'installer un noyau 64bit et de booter dessus pour des applications spécifiques.
Il faudrait voir à mesurer le gain (désolé, pas d'outils à proposer).

Edit : et puis si tu veux exploiter à fond ton 64bit, utiliser une distributions source genre gentoo serait peut être mieu :)
Vieu motard que jamais
azertyman64

Messages : 380
Géo : PAU

Lun 23 Oct, 2006 14:15

Merci pour ces indications,

effectivement, je m'attendais à ca, pour mes taches usuelles, mieux vaut rester en 32 bits pour la richesse de l'offre logicielle. Je n'avais pas pensé à l'idée d'un autre système en 64 bits. En fait, je n'ai jamais installé 2 linux en même temps sur mon disque. J'en suis resté au dual boot Windows / linux, et j'aime surtout les live CD genre Kaella ou Xubuntu (au passage: des live CD en 64 bits existent-ils ?)

Mon interrogation reste cependant: quels sont les arguments techniques pour passer au 64 bits, hormis la rengaine que "c'est la technologie de l'avenir". Mon ami à lunettes (Google, pour les purs francophones) m'indique seulement un avantage dans les calculs sur des entiers, et les benchmarks (tous sur des jeux) datent tous de 2 ou 3 ans, lors de la sortie de windows 64. La situation a-t-elle evolué depuis ?

Droopy
Droopy_37

Messages : 72
Géo : Tours

Jeu 26 Oct, 2006 11:27

Pour une station de travail classique, il n'y a pour ainsi dire pas d'avantages au 64-bit. Que ce soit pour des jeux, de la bureautique ou du multimédia, le 64-bit n'apporte quasi rien.

Là où le 64-bit a vraiment un gros avantage, c'est pour des applications spécifiques.
Il y a deux avantages majeurs à avoir une architecture 64-bit:

1/ Précision des nombres (naturels,entiers, réels):
prennons les entiers:
en 32-bit, un entier peut prendre des valeurs comprises entre -2147483647 et 2147483647 (si il est codé sur 32-bits et qu'il est signé, c'est pas toujours le cas mais je vais pas rentrer dans les détails).
en 64-bit, un entier peut prendre des valeurs comprises entre -9223372036854775807 et 9223372036854775807

Pour les réels, on va gagner en nombre de décimales autorisées.

On gagne donc en précision sur les nombres, ce qui est intéressant principalement pour des calculs dans le cadre de recherches scientifiques.
Il est important de noter qu'on peut très bien coder un entier sur 64 bits dans un environement 32-bit. Mais dans ce cas précis, les calculs seront deux fois plus rapides dans un environement 64-bit.

2/Précision de l'adressage:
ça, c'est l'avantage majeur. Qui n'est jamais qu'une conséquence du point précédent
nous avons vu les valeurs limites pour un entier signé. Les OS gèrent la mémoire avec des entiers. Si l'OS utilise un codage 32-bit pour son adressage et qu'il utilise des entiers non signés, il pourra adresser un espace mémoire de 4294967296 bytes =2³² bytes = 4GB.
Si on prends toutes les versions 32-bit de Windows, il fait encore moins bien. A la base, il gère jusqu'à 2GB sans problèmes. Par contre, si vous installez un windows sur un PC avec 4GB de RAM, il ne pourra en exploiter que 3GB et encore, il faut le forcer à modifier sa manière de gérer la mémoire et ça peut devenir instable sur certains chipsets.
Une fois de plus, ça ne concerne pas la majorité des gens. Par contre pour un serveur, ça deviens vite un gros problème. C'est pourquoi, Win-64 se vend actuellement principalement sur des serveurs.
Un autre cas pratique est l'ancien format de disque Windows, le FAT32. Celui-ci faisait donc de l'adressage sur 32 bits et il était donc impossible de créer un fichier de plus de 4GB (ou même 2GB, je ne sais plus). Une fois de plus, ce genre de problème ne se rencontre que dans des applications spécifiques (grosses bases de données p.e.)

Voilà qui devrait éclaircir un peu les choses au niveau technique.

Pour ce qui est des benchmarks de jeux, ça ne rime à rien. L'idée que le 64-bit augmente les performances est globalement fausse. Trois choses importantes sont à considérer dans ce domaine:

1/ un jeux qui aurait été codé en 32-bit ne peut pas tourner dans un environement 64-bit sans ajouter une couche supplémentaire comme elle existe dans Win-64 mais qui altère méchament les performances. Si on transpose un code efficace en 32-bit dans une version 64-bit (c'est donc un autre exécutable compilé spécifiquement pour un environement 64-bit). Les performances doivent être (+/-)identiques (sur un hardware équivalent évidement).

2/le seul cas où la version 64-bit serait plus performante est si le jeu a un réel besoin de manipuler une grosses quantité de nombres codés sur 64 bits. Ceci pourrait être le cas pour une grosse simulation 3D, mais en pratique ce n'est pas vraiment le cas pour les jeux. L'avènement des jeux 3D s'est fait en 32-bit et les développeurs ont appris à contourner les problèmes que ça suppose.

3/pour faire tourner un jeu efficacement sur une plateforme 64-bit, il faut avoir un hardware traitant efficacement les instructions 64-bit. Et ce du CPU au GPU, en passant par les bus, la mémoire, etc... Ce n'est pas encore le cas à l'heure actuelle.

Donc, pour conclure, la seule chose qui va nous obliger un jour à passer au 64-bit est le fait que les constructeurs hardware vont arrêter de fabriquer des composants 32-bit. Et pour la majorité des gens, ceci n'apportera que des ennuis comme ceux évoqués dans les posts précédents. En fait, là où ça va être vraiment pénible, c'est pour les gens qui emploient un vieux logiciel qui n'est plus supporté et qui ne sera pas porté en 64-bit. Celui-ci va fonctionner moins bien dans un environement 64-bit, si il fonctionne...

Pour plus d'infos, il y a un article sur wikipedia en anglais : 64-bit

edit: désolé d'avoir autant parlé de Windows dans une section Linux, c'était juste pour fournir des exemples que je connais. Le fond de ce que j'explique n'a rien à voir avec l'OS utilisé.
Twins

Messages : 4

Jeu 26 Oct, 2006 15:17

Twins a écrit:3/pour faire tourner un jeu efficacement sur une plateforme 64-bit, il faut avoir un hardware traitant efficacement les instructions 64-bit. Et ce du CPU au GPU, en passant par les bus, la mémoire, etc... Ce n'est pas encore le cas à l'heure actuelle.
Rien à voir. La largeur du bus de données peut-être différente, le CPU utilise une certaine largeur en interne, et peut communiquer au "reste du monde" avec un bus d'une largeur différente.

Ensuite les instructions 64 bits ainsi que les registres (RAX, RDX, RIP…) ne sont utilisés qu'en interne par le CPU. Il n'y a pas de "sous-traitements" extérieurs des fonctions logiques. Les périphériques peuvent soulager le traitement de données (comme le GPU) mais vont en aucun cas partager l'exécution des instructions du CPU : Chacun des périphériques exécute ses propres instructions, après que le CPU les ait chargé.

PS : La norme PCI existe en 64 bits.
Attentyon, ponaytte maychante !
Téthis

Avatar de l’utilisateur
Messages : 3895
Géo : De passage chez les cathares

Ven 27 Oct, 2006 08:09

Bonjour,

merci pour ces eclaircissement techniques.
Je vais suivre le conseil d'Azertyman64 et rester en 32 bits, avec un autre système 64bits pour "l'occasionnel".

Tout ce que dit Twins est sans doute valable quel que soit l'OS. Pour l'illustration par Windows
edit: désolé d'avoir autant parlé de Windows dans une section Linux, c'était juste pour fournir des exemples que je connais. Le fond de ce que j'explique n'a rien à voir avec l'OS utilisé.

, je ne tiens pas particulièrement à cet OS (j'ai terminé ma période "pirate" depuis longtemps), et c'est justement parce que linux offre ce choix que je me pose la question.

Droopy
Droopy_37

Messages : 72
Géo : Tours

Ven 27 Oct, 2006 10:46

Droopy_37 a écrit:Je vais suivre le conseil d'Azertyman64 et rester en 32 bits, avec un autre système 64bits pour "l'occasionnel".
Les programmes en 64bits prennent plus de place en mémoire et sur le disque, et pour une machine en 512Mo…

Droopy_37 a écrit:je ne tiens pas particulièrement à cet OS (j'ai terminé ma période "pirate" depuis longtemps)
Ah bon, je ne vois pas le rapport entre pirates et Windows. On peut avoir un "vrai" Windows acheté et peupler son monde avec des logiciels libres.
Attentyon, ponaytte maychante !
Téthis

Avatar de l’utilisateur
Messages : 3895
Géo : De passage chez les cathares

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit