如何在 gfortran 中编译 10^9 kind-8 整数数组

How to compile 10^9 kind-8 integer array in gfortran

我想在 gfortran(Fortran f90 或 f95)中创建一个 10^9 种 8 整数数组。

我试着声明如下

整数(种类=8):: x(1000000000)

我希望它能编译,但它没有。如果我使用 100000000 而不是 1000000000,它编译没有问题。我的机器有 64G 内存。我能做什么?

没有看到您的代码,我怀疑如果您使用堆,您会像 OS 一样快乐。

integer, parameter :: nx = 1000000000
integer(8), allocatable :: x(:)      ! Yes, I know 8 is not portable.
allocate(x(nx))