作者:小胖胖的夢2502895687 | 来源:互联网 | 2023-05-25 16:28
设置:假设我有一个相当详细的软件(在Julia中),涉及几个模块的交互.我觉得它运行速度比应该慢.通常,要检查的第一个罪魁祸首是类型不稳定的函数,即编译器无法提前确定输出类型是什么的函数.
问题:如何检测这些类型不稳定的功能?
我目前所做的:我使用分析工具,例如@tholy的ProfileView.jl包来检测瓶颈,假设类型不稳定的函数将在这里显示(由于它们的运行时间过长).但是真正好的是某种调试工具,在运行例程之后,会吐出一个函数列表,其中编译器无法提前确定输出类型.这可能吗?
1> IainDunning..:
您可以尝试使用TypeCheck.jl对探测器说慢的位.
Julia 0.4也有@code_warntype.