如果用matmul()编译(在Linux中运行OMP_NUM_THREADS >1),gfortran (gcc-9)会自动并行化-fopenmp内部函数吗?如果是的话,有没有办法把它关掉?
没有应用-fextrnal-blas标志为matmuls调用并行BLAS。
发布于 2019-09-05 22:28:28
你可以很容易地在GCC的代码中看到:
许多Fortran内部调用实际上是作为库libgfortran提供的外部函数实现的,matmul也不例外。所有基本的数值类型(及其类型)都有一个单独的C代码matmul,还有各种目标向量指令集(AVX、FMA等)的替代形式。但显然它们都没有使用任何OpenMP指令。
https://stackoverflow.com/questions/56652682
复制相似问题