开发者

Block or variable definition of integer and memory capacity

Does anyone have idea about this problem , I have a code that runs nicely for 3000 element mesh But when I want to run it for 17000 element mesh it shows me this error: A common block or variable may not exceed 2147483647 bytes

This is some parts of code:

PARAMETER(NDIM=398316702)

integer   IA(NDF+1),LPIVTC(NDF),JA(NDIM)

DIMENSION AA(NDIM)

And it shows the error for

DIMENSI开发者_JAVA百科ON AA(NDIM)

Why is it in that way?


This isn't a characteristic of Fortran per se, but rather your particular compiler or operating system. Note that 2147483647 = 2^31 - 1 or 2 gigabits. Probably you have a 32-bit OS and it is unable to allocate larger amounts of memory. As to why you can't get a full 2^32, perhaps something is using a signed rather than unsigned integer to store addresses and one bit is unavailable.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜