当负载超过核心时,我仍然可以分析我的代码吗?

时间:2018-03-24 16:11:22

标签: load profiler gprof vtune

有时我需要分析应用程序,同时需要发起大量不相关的计算。通常我会启动多个作业,以便负载超过核心数量,这样我可以稍后回来,所有作业都已完成。

在这种情况下,我还能安全地解释配置文件结果吗?

我可以想象,在某些情况下,由于我的系统超额认购工作,因此工作量分布的运行成比例地减少,结果不会受到影响,因为工作轮询也可能不那么频繁。

我还可以设想一个分析器,它以一个设定的周期检查应用程序,比如每10毫秒,发现代码需要更长的时间才能保留在特定的功能中,但这只是因为系统被超额认购。

我只是猜测这些事情,两者都可能是真的,但我需要澄清。

1 个答案:

答案 0 :(得分:1)

你不只是测量,对吗? 你正试图找到任何隐藏的疾病"如果你可以治愈他们,代码运行得更快,对吧?

如果是这样,任何此类疾病都需要其过程的某些分数。时间,无论其他原因运行得多快或多慢。 它可以运行一分钟或一天 - 分数保持大致相同。

所以你不需要一些能够衡量时间的东西。 你需要一些可以确定时间分数的疾病。

This是一种找到它们的方法。