根据应用程序分析(数学)估算性能增益

时间:2015-07-02 20:52:59

标签: performance

这个问题相当于#34;数学"相关 - 但肯定是任何"软件开发人员感兴趣的。

我已对我的应用程序进行了一些分析。并且我观察到存在巨大的性能差异,即环境特定的" 有一个"快速"环境和'慢慢'#34;环境。

  • overall应用程序性能"快速" 5次比"慢"更快。
  • 一个particular函数调用" fast" 18次比"慢"

所以让我们假设我将能够减少通过 50%调用此特定功能。

我如何计算"慢速"环境?
是否有计算预期绩效收益的近似公式?

道歉:
如今,我不再擅长做任何数学。或者说我从来没有! 我一直在考虑在哪里提出这样的问题,最好 没有提出任何更合适的地方 另外,我无法想出一个最佳问题的主题,还有哪些标签要分配......

1 个答案:

答案 0 :(得分:1)

让我们做一个假设(有问题,但我们没有别的事情继续下去)。 让我们假设所有5:1的时间减少都是由于函数foo减少了18:1。 这意味着程序中的其他所有内容都需要相同的时间。

因此,假设在快速环境中总时间为f + x,其中f是foo在快速环境中所占用的时间,x是其他所有内容。

在慢速环境中,时间为18f + x,等于5(f + x)。 好的,解决x。

18f + x = 5f + 5x

13f = 4x

x = 13/4 f

好的,现在在缓慢的环境中你想要调用foo一半。 那么时间就是9f + x,即:

9f + 13/4 f = 49/4 f

原始时间是18f + x =(18 + 13/4)f = 85/4 f

所以时间从85/4 f到49/4 f。 那速度比为85/49 = 1.73

换句话说,这是一个73%的加速。