JoanDoe Posté(e) le 20 janvier 2006 Partager Posté(e) le 20 janvier 2006 Bonjour, Est-ce que le portage d'une appli 32 bits (C ou Fortran) en 64 bits, permet automatiquement à cette dernière d'adresser plus de 2 Go de RAM ? Merci JD Lien vers le commentaire Partager sur d’autres sites More sharing options...
lorinc Posté(e) le 20 janvier 2006 Partager Posté(e) le 20 janvier 2006 qu'est-ce que tu entends par "adresser plus de 2Go de RAM" ? les appels systemes de linux concernant la gestion de la mémoire supporte plus de 2Go d'adressage depuis longtemps. si tu cherches sur google les limites de mmap() sous linux, tu verras que 2Go c'est rien par contre, il te faut une libc à jour pour en profiter (i.e. un malloc basé sur mmap) EDIT : je viens d'aller regarder, et la limite pour un noyau 32bits est autour de 3GB, pour un noyau 64, ce sear généralement > 1TB. recompiler ton programme ne sert à rien, c'est le noyau qui gère la mémoire, s'il est 32bits, alors il ne pourra pas adresser plus de 3GB de mem, peu importe à la tronche du programme Lien vers le commentaire Partager sur d’autres sites More sharing options...
JoanDoe Posté(e) le 20 janvier 2006 Auteur Partager Posté(e) le 20 janvier 2006 qu'est-ce que tu entends par "adresser plus de 2Go de RAM" ? les appels systemes de linux concernant la gestion de la mémoire supporte plus de 2Go d'adressage depuis longtemps. si tu cherches sur google les limites de mmap() sous linux, tu verras que 2Go c'est rien par contre, il te faut une libc à jour pour en profiter (i.e. un malloc basé sur mmap) EDIT : je viens d'aller regarder, et la limite pour un noyau 32bits est autour de 3GB, pour un noyau 64, ce sear généralement > 1TB. recompiler ton programme ne sert à rien, c'est le noyau qui gère la mémoire, s'il est 32bits, alors il ne pourra pas adresser plus de 3GB de mem, peu importe à la tronche du programme Salut Lorinc, Mon besoin est de pouvoir utiliser les 4 go de mémoires par un process. Un malloc de 4GB en gros Lien vers le commentaire Partager sur d’autres sites More sharing options...
lorinc Posté(e) le 20 janvier 2006 Partager Posté(e) le 20 janvier 2006 dans ce cas, il te suffit d'avoir un noyau 64bits avec une libc 64bits, et ça devrait passer par contre, je doute que tu puisse faire UN malloc de 4GB, because 4GB est vraissemblablement plus gros qu'une page mais 4GB d'alloué pour un processus, c'est faisable Lien vers le commentaire Partager sur d’autres sites More sharing options...
nonas Posté(e) le 21 janvier 2006 Partager Posté(e) le 21 janvier 2006 Highmem en l'occurence Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.