我需要优化一些代码,我在ifort的手册页中遇到了“函数拆分”这个术语。当用Google搜索时,我无法获得有关此类优化的任何详细信息。
这是由ifort编译器的编译器标志-fnsplit启用的。
有没有人知道这种类型的优化是如何工作的,何时这种优化最有效?
我必须在FORTRAN代码上实现它。任何建议都会有所帮助。
答案 0 :(得分:4)
函数拆分是一种影响函数内联方式的优化技术。我不能诚实地说我完全理解它,所以我不会试图解释它。有关详细信息,请参阅this paper及其引用的其他来源。
要在Fortran代码中实现它,只需使用编译器;如您所见,英特尔编译器使用名为fnsplit
的标志。如果其他编译器实现了该技术,我确信他们的文档将告诉您如何使用它。至于它是否有益,唯一可靠的方法是做一些实验。