GFORTRAN在64位时候设置线程数目使用OMP_SET_NUM_THREADS无法生效,查看glibc代码,可以看出OMP_SET_NUM_THREADS是用C语言实现的,fortran参数传过来默认为地址,而OMP_SET_NUM_THREADS把传过来地址默认处理为32位地址,所以调用失败,64位下要使用专门处理64位地址的对应函数OMP_SET_NUM_THREADS_8_,上述两个函数输入参数不需要确认输入的integer是32位还是64位,这个与Intel Fortran不一样,Intel Fortran只是需要确认OMP_SET_NUM_THREADS的参数是32位还是64位