Ошибка при объявлении большого массива в Fortran

При объявлении массива происходит ошибка компиляции, иногда компилятор пишет что стек переполнен, иногда вообще без пояснений. Заметил, что когда массив начинает занимать примерно 1,8 Гб оперативной памяти, тогда ошибка и происходит. В теории на 64-битных системах максимальный размер массива на языке Fortran может достигать 2^63-1, но у меня размер меньше. Проект создаю тоже 64-разрядный. Использую компилятор Intel Fortran. Выдаёт такую ошибку:

Compilation Aborted (code 1)

Код программы:

Program Console1
real*8:: arr1(250000000)
pause
end program Console1 

Ответы (1 шт):

Автор решения: Dandelf

Действительно, проблема была в маленьком стеке. Для того, чтобы создать большой массив, нужно сделать его динамическим и сразу же выделить под него память:

Program Console1 
real*8, allocatable:: arr1(:)
allocate(arr1(250000000))
pause
end program Console1 

Получилось выделить даже память под массив с 5 000 000 000 элеметов

→ Ссылка