Les architectures 64 bits

  • Le Rasp­ber­ry Pi 3 utilise aus­si un processeur 64 bits, le Broad­com BCM2837 (4 cœurs ARM 64 bits Cor­tex-A53 cadencés à 1,2 GHz).
  • ARMv8 est une archi 64 bits dévelop­pée par ARM. En mai 2016, ARM annonce la sor­tie du Cor­tex-A73 à des­ti­na­tion de la réal­ité virtuelle.
  • Il n’y a pas de CPU grand pub­lic 128, 256 ou 512 bits. Ce sont plutôt des GPU ou des processeurs spé­cial­isés (cryp­tographique, etc.) et l’ob­jec­tif est surtout d’ac­céder à des bus de don­nées plus larges pour pass­er plus d’in­fos en un seul cycle d’hor­loge ou tra­vailler avec des flot­tants. Pour les cal­culs et la pré­ci­sion, 64 bits suff­isent le plus sou­vent (pré­ci­sion assurée logi­cielle­ment).  Les proc 64 bits savent égale­ment gérés native­ment des nom­bres encore plus grand grâce au instruc­tions SIMD (SSE, AVX). Ces instruc­tions savent traiter des nom­bres de 128 bits, 256 bits et 512 bits.
  • Microsoft Visu­al Stu­dio pos­sède tout ce qu’il faut pour com­pil­er vers x64. Voici com­ment con­fig­ur­er le pro­jet. A savoir que Visu­al C++ ne sup­porte pas l’assem­bleur 64 bits inline. Il fau­dra pass­er par un assem­bleur externe comme MASM.
  • Porter ses appli­ca­tions de x32 vers x64, est-ce une bonne idée ?  On pour­ra utilis­er plus de mémoire et gag­n­er 5 à 15% de vitesse après recom­pi­la­tion. PVS-Stu­dio Ana­lyz­er peut aus­si être util­isé pour détecter kes erreurs liées au pas­sage vers 64 bits.
  • Les win­dows 64 bits ne peu­vent pas tous adress­er la même quan­tité de mémoire, et ce pour des raisons com­mer­ciales. Voici un tableau avec les dif­férentes RAM. La taille d’une page reste de 4Ko.
  • La ver­sion 64-bits de Win­dows utilise un mode spé­cial WoW64 (Win­dows-on-Win­dows 64) qui trans­forme les appels 32 bits des appli­ca­tions vers les ressources 64 bits du sys­tème. Notons qu’à cause de cette ému­la­tion, les applis 32 bits fonc­tion­nent plus lente­ment (1–5%) sous WoW64 qu’en natif 2 bits.
  • L’essen­tiel de l’ar­chi­tec­ture x64 peut être trou­vé dans ce livre: “AMD64 Archi­tec­ture Programmer’s Man­u­al. Vol­ume 1. Appli­ca­tion Pro­gram­ming” (PDF, 3.5M)
  • 2 archi­tec­tures 64 bits con­nues pour win­dows mais très dif­férentes: IA64 d’In­tel & HP (processeurs Ita­ni­um 1 & 2) et x64 intro­duite par AMD puis Intel et qui assure une com­pat­i­bil­ité ascen­dante avec x86 (peut porter plusieurs appel­la­tions: x86-64, AA-64, Ham­mer Archi­tec­ture, AMD64, Yamhill Tech­nol­o­gy, EM64T, IA-32e, Intel 64). Des sociétés comme DEC, SGI ou Sun Microsys­tems ont depuis le milieu des années 1990 employé des CPU 64 bits respec­tive­ment l’Alpha, le MIPS R4000 et l’Ultra­SPARC. J’ai bossé sur une sta­tion 16 processeurs Alpha au Lab­o­ra­toire d’In­for­ma­tique Fon­da­men­tale de Lille (LIFL) sur un pro­jet de par­al­lélisme PVM.
  • Mon arti­cle sur l’ini­ti­a­tion à l’assem­bleur 64 bits.
  • 32 vs 64 bits: Les proc 32 bits ne peu­vent pas adress­er plus de 4 gigaoctets (2^32) de mémoire cen­trale, tan­dis que les 64 bits peu­vent adress­er 16 exbioctets (2^64) de mémoire — mais ce n’est pas le cas du sys­tème d’ex­ploita­tion. En même temps, le pas­sage de 32 bits à 64 bits aug­mente la con­som­ma­tion de mémoire. En effet, les entiers et les adress­es passent de 32 bits (4 octets) à 64 bits (8 octets). Il faut donc deux fois plus d’octets pour les représenter.
  • L’Emo­tion Engine de la PlaySta­tion 2, un processeur 64 bits avec des reg­istres de 128 bits.

Fièrement propulsé par WordPress | Thème : Baskerville 2 par Anders Noren.

Retour en haut ↑

%d blogueurs aiment cette page :