J'espère que cela n'a pas été couvert auparavant, mais si je compile un programme 32 bits en C++ qui utilise des nombres à virgule flottante de 64 bits (double), et l'exécuter sur un 64 bit OS, faudra-t-il encore autant de cycles d'horloge pour déplacer le flottant 64 bits vers le processeur et le ramener vers le bélier comme sur un système d'exploitation 32 bits car il est compilé pour 32 bits. Ou cela prendrait-il moins de cycles d'horloge car le système d'exploitation se déplace en 64 bits à la fois, même si le programme est compilé en compilateur 32 bits. La raison pour laquelle je demande est parce que im utilisant VS express qui a 32 bits seulement, et je me demande si je peux utiliser 64 bits flottants tout en maintenant la vitesse ou si 32 bits flottants seront plus rapides, même si im en utilisant un système d'exploitation 64 bits, et croyez-moi , le programme que je veux écrire utilisera des dizaines de milliers de nombres à virgule flottante qui auront beaucoup de calculs et d'opérations sur bits (effectuées sur des réseaux de neurones).64 bits flottants compilés avec le compilateur 32 bits sur OS 64 bits
Merci.
oh, merci, et si ce n'est pas beaucoup à demander, pourriez-vous me pointer dans la bonne direction, avec comme un livre ou quelque chose pour comprendre comment les données sont transférées entre le processeur et ram. – contrapsych
Les données se trouvent entre le processeur et la RAM grâce à une multitude de caches ces jours-ci, consultez http://en.wikipedia.org/wiki/CPU_cache pour une introduction. –
L'OP a demandé à propos de la vitesse de déplacement, pas de la vitesse mathématique en virgule flottante. Dans ce cas, si vous utilisez les registres normaux, le système 64 bits serait plus rapide, mais si les registres SSE sont utilisés, il n'y a pas de différence. –