Software Profiling for Hot Path Prediction: Less is More

本文提出的是一个预测程序执行热路径的算法,用在了Dynamo上。之所以叫做预测热路径原文给出了说明

Another more subtle difference is that offline profiles are summaries of program behavior while online profiles are predictions.

当时的程序profiling基本都是离线进行的,即为了profiling而去运行程序(我的表达可能不是很准确原文为preparatory run of the program)然后再整理使用产生的profiling数据,比如优化编译。与离线相对的就是在线运行,就是动态执行时profiling且根据profiling数据对运行进行优化调整。

NET算法就只profiling热路径的头,如下图有多条路径NET只需要采样A的执行频率,

net_algo