2
我有一個針對ifort進行了優化的程序,但是我想用gfortran編譯它。這裏的標誌提供:用gfortran編譯代替ifort
FCFLAGS= -Vaxlib -CB -mcmodel=large -O -openmp -DOMP
我已經在手動輸入一看兩個試圖找到相應的選項,但我一直沒能找到任何東西(除了-openmp其他 - fopenmp,我已經知道了)。
我有一個針對ifort進行了優化的程序,但是我想用gfortran編譯它。這裏的標誌提供:用gfortran編譯代替ifort
FCFLAGS= -Vaxlib -CB -mcmodel=large -O -openmp -DOMP
我已經在手動輸入一看兩個試圖找到相應的選項,但我一直沒能找到任何東西(除了-openmp其他 - fopenmp,我已經知道了)。
這是,通過選擇等價表的選項:
ifort gfortran Commentary
-----------------------------------------------------------------------
-Vaxlib Enables old VAX library compatibility
(should not be necessary with gfortran
and newer ifort versions)
-CB -fbounds-check Enables array bounds check at run-time
-mcmode=large -mcmodel=large Enables large memory model
-O -O2 Enables optimisaiton
-openmp -fopenmp Enables OpenMP support
-DOMP -DOMP Preprocessor option (defines the OMP symbol)
注意,使邊界檢查和大內存模式會減慢代碼執行。另請注意,-O
單獨使用ifort
(相當於-O2
)和gfortran
(相當於-O1
)啓用不同級別的優化。另請注意,ifort
優於gfortran
。您可能需要提供更多選項來微調後者以達到與ifort
相同的性能。
是否有完整的等價表? – gregmacfarlane
@gregmacfarlane,我不這麼認爲。但可以通過閱讀手冊來構建它。 –