Hello :-)

J'ai un code en fortran 77, qui comporte entre autre choses, 5 gros tableaux, dont la taille est donnee par le parametre 'np'.

La valeur actuelle est : np = 36000000.
ce sont des tableaux de real, donc 4 octets je pense.
ca fait 4*36*1e6*5 = environ 600Mo de memoire.

Ca passe sans probleme. Si je passe a np = 200000000 (200 millions), j'ai cette erreur a la compilation :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
ld: in /var/folders/Rq/RqdW-0VZEaOgHSMXLVSZLk+++TQ/-Tmp-//ifortzg8sFo.o, malformed .o file, symbol _equil_ with address 0xEE6CC150 is not with section 5 (__DATA,__data) address range of 0x19720 to 0x19B00
make: *** [run] Error 1

Je ne comprend pas. np=200millionsm ca fait environ 3.7Go de memoire, et ma machine en possede 32Go.

Je suis pas tres habitue au fortran 77, je pensais que, ne possedant pas d'allocation dynamique, tous les tableaux allaient dans le stack... mais ma pile fait 8Mo donc a priori j'ai tord.

Voyez-vous comment solutionner le probleme ?

Merci !