- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am running Windows 98.
The F90 code I get the memory allocation error with is pretty simple:
program lm
real(8) :: x(:,:)
allocate (x(5800,5800)) !x is 269,120,000 bytes
end
The error message is
run-time error F6772
-cannot ALLOCATE ALLOCATABLE array - out of memory
Any request greater than 256M = 268,435,456 bytes fails. Note that this
program is all array x, so evidently the space occupied by the OS is not
involved. Makes sense. The limitation is on the program/process image
size.
How do I fix this?
The F90 code I get the memory allocation error with is pretty simple:
program lm
real(8) :: x(:,:)
allocate (x(5800,5800)) !x is 269,120,000 bytes
end
The error message is
run-time error F6772
-cannot ALLOCATE ALLOCATABLE array - out of memory
Any request greater than 256M = 268,435,456 bytes fails. Note that this
program is all array x, so evidently the space occupied by the OS is not
involved. Makes sense. The limitation is on the program/process image
size.
How do I fix this?
Link Copied
2 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You (or the system) cannot manage an array bigger than 256Mb because the pointer size would be bigger than it is allowed. May be on a 64 bit computer will work. (I don't know if other languajes can on 32 bit)
(Take a look to "Handling Arrays and Visual Fortran Array Descriptors" on Help)
Solutions: change computer and OS (64 bit) or try to manage smaller arrays, for example an array of arrays (slower, of course)
(Take a look to "Handling Arrays and Visual Fortran Array Descriptors" on Help)
Solutions: change computer and OS (64 bit) or try to manage smaller arrays, for example an array of arrays (slower, of course)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Jimenez, thanks for replying, but 256MB is well within the limits of a 32-bit address.
Jim is not using Compaq Visual Fortran - he's using Microsoft Fortran PowerStation, which has internal limits such as the one he ran into. Compaq Visual Fortran does not have such a limit on allocatable arrays. For purchase information, please visit our web site.
Steve
Jim is not using Compaq Visual Fortran - he's using Microsoft Fortran PowerStation, which has internal limits such as the one he ran into. Compaq Visual Fortran does not have such a limit on allocatable arrays. For purchase information, please visit our web site.
Steve

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page