Eigen在src/Core/util/Macros.h中定义了 EIGEN_STRONG_INLINE、EIGEN_ALWAY_INLINE、EIGEN_DONT_INLINE。
其中EIGEN_STRONG_INLINE在MSVC和ICC编译器中使用的是__forceinline,如果替换为inline的话,会有效率损失。
EIGEN_STRONG_INLINE在GCC编译器中使用的是inline,部分gcc的优化不能做到内联 ,效率会有大幅影响。可以在必要的地方用EIGEN_ALWAY_INLINE替换
ps:Eigen使用了大量的模板类来兼容不同的计算模式,如果内联或者编译优化没搞好的话,会起不到优化的左右,甚至适得其反。