在代码编译(intel编译器)期间链接库时,如果使用
mpicc -lm -lmpi ...
,我有个警告说:
icc: warning #10315: specifying -lm before files may supersede the Intel(R) math library and affect performance
因此,我使用了英特尔的数学库mkl
,即mpicc -mkl -lmpi ...
。我很好奇-mkl
和-lm
有什么区别?如果我不喜欢任何数学库就删除-lm
,它也可以工作。为什么?