你这个问题有点模糊,我先把可能的意思拆开来说,你可以对号入座:
这是最常见的问题,通常不是 Ubuntu 的问题,而是编译方式的问题。
没有开优化编译
gfortran test.f90
这样编译几乎是“裸跑”,非常慢。
✅ 正确方式:
gfortran -O2 test.f90
# 或
gfortran -O3 -march=native test.f90
用了 debug 模式
gfortran -g test.f90
debug 会拖慢很多。
数组越界没检查但逻辑差 Fortran 默认不检查数组越界,写错循环也会“看起来慢”。
I/O 太频繁
write(*,*) 每次循环都写文件
磁盘 I/O 是最大瓶颈之一。
这可能是系统层面的问题:
可以检查:
top
htop
free -h
这通常是:
-march=native✅ 建议:
sudo apt install libopenblas-dev
gfortran -O3 -march=native -funroll-loops program.f90 -o program
如果是数值计算:
sudo apt install libopenblas-dev
你可以补充:
gfortran 还是 ifort?我可以直接帮你定位瓶颈。