变量内存分配中的Fortran分段错误

时间:2014-05-13 19:06:57

标签: fortran g77

我是Fortran的新手,我正试图让别人的代码运行以获得更大的输入。我不断在代码的这个区域中遇到分段错误,(惊讶,惊讶!!)取决于输入的大小。我将调试输出发送到一个文件并在每次写入后刷新,所以我确定它在这里,而不是在其他地方。

  integer    npoints, nv1(maxstrucs),ind1,ind2,window
  integer*2  smapall
  real*8     xre(0:maxres),xrp(0:maxres)
  real*8     xse(3,0:maxres),xsp(3,0:maxres)
  real*8     xm(3,3,0:maxres)
  real*8     rms2_fast3, urms
  real*8     xp(3,maxres),xe(3,maxres)

  real       smap,v1
  common /vectors/ v1(maxstrucs,maxres,3)
  common/allall/ smap(maxres,maxres),smapall(numcol,maxres,maxres),
 &     nstrucs

maxstrucs为500,maxres为150,numcol为124750。 我知道常见字段存在问题,但我正在使用标志-mcmodel = medium

进行编译

作为参考,编译语句是

g77  -mcmodel=medium -fno-automatic -ffixed-line-length-none -c -o mmult.o mmult.fr code here

我还使用

将堆栈大小设置为无限制
ulimit -s unlimited

我有一台免费提供94Gbs内存的服务器。所以在理论上它应该有效,除非我不知道某种限制。请帮忙

0 个答案:

没有答案