Machine virtuelle Java - 32b contre 64b

Sur une machine 32b, seule la version 32b de la JVM peut être installée. Sur une machine 64b, l'utilisateur a le choix entre la version 32b et la version 64b. Mais il y a certaines nuances à cela qui peuvent affecter les performances de nos applications Java.

Si l'application Java utilise moins de 4G de mémoire, nous devrions utiliser la JVM 32b même sur des machines 64b. En effet, les références mémoire dans ce cas ne seraient que 32b et leur manipulation serait moins coûteuse que la manipulation d'adresses 64b. Dans ce cas, la JVM 64b serait moins performante même si nous utilisons OOPS (pointeurs d'objet ordinaires). En utilisant OOPS, la JVM peut utiliser des adresses 32b dans la JVM 64b. Cependant, leur manipulation serait plus lente que les références 32b réelles puisque les références natives sous-jacentes seraient toujours 64b.

Si notre application va consommer plus de mémoire 4G, nous devrons utiliser la version 64b car les références 32b ne peuvent adresser plus de 4G de mémoire. Nous pouvons installer les deux versions sur la même machine et basculer entre elles en utilisant la variable PATH.