确定更好的架构改进,给定规格比率



我正在解决一个问题,我只想确保我的工作是正确的,所以如果有人可以批评我,将不胜感激。

问题:

正在考虑两个架构改进(A1和A2)。您已经收到一个表格,其中显示了 5 个基准测试中每个基准 (B1-B5) 相对于基本系统的加速;这些加速是与参考计算机的规格比率。

A1: B1 = 1.5, B2 = 4, B3 = 3, B4 = 2, B5 = 5

A2: B1 = 3, B2 = 1.5, B3 = 4, B4 = 4, B5 = 3

鉴于上述信息,应该选择哪种改进?

我的回答如下:

使用基线作为参考,可以使用改进的规格比率 (A1/A2) 的几何平均值来确定哪个更好。

规格比率如下:

S1 = 1.5/3

S2 = 4/1.5

S3 = 3/4

S4 = 2/4

S5 = 5/3

几何平均值如下:(S1*S2*S3*S4*S5)^(1/5),大致相当于 0.96。

因此,A1 大约只有 A2 的 96%,应该选择 A2。

再一次,我只是想看看我的想法是否正确。任何帮助,不胜感激。

编辑1:使用麦基的方法论

以基准标记的基本速度为例,A0 的基本速度如下:

B1=B2=B3=B4=B5=1

因此,Base 与 A1 (A0/A1) 的规格比的几何平均值为:

((1/1.5) * (1/4) * (1/3) * (1/2) * (1/5))

^ (1/5) = 0.35

基座与 A2 (A0/A2) 的规格比的几何平均值为:

((1/3) * (1/1.5) * (1/4) * (1/4) * (1/3))

^ (1/5) = 0.34

但是,将此处(基数/A1)与(基数/A2)进行比较,您得到 0.35/0.34 = 1.03 意味着 A1 比 A2 慢大约 3%?我的数学在这里不对还是我为 A0 选择了错误的基准? 我最初的方法似乎更简单,最初的问题是什么......

我建议计算两个体系结构改进中每个的几何平均值,然后比较结果两个数字。这样,您也可以将它们中的每一个与基本系统进行比较(基本系统的得分为 1.0)。当然,当你把这两个数字相除时,你会得到与上面相同的结果(A1 比 A2 慢 0.96 倍)。

这样做可以让您用一个数字来表征每台机器的性能。这就是练习的重点。如果你有很多机器要比较,你的方法会困难得多......

Given the above information, which improvement should be chosen?

这是一个有趣的问题,但我觉得所提供的信息还不够。一方面,对于系统用户来说更重要的是 - 他是否想最大限度地减少执行一批任务所需的总时间?或者,也许他关心批处理中最长的任务需要多少时间,而且不能太长(实时系统?或者他关心批次中最短的任务时间——因为他在和别人竞争先解决它,只有第一个解决方案得到奖励(竞争性梅森素数搜索)?

此外,如果我用以下新信息补充上述信息:

Benchmarks B1,B3-B5 represent tasks that happen just 0.01% of the time in production
Benchmark B2 represents the 99.99% of tasks

那么在优化平均情况时,A1 是 A2 的两倍多。目前还不清楚哪种改进更好!

编辑:头脑风暴 - 如果B1-B5代表平均任务并且运行时间的差异被视为随机,也许最好选择标准偏差最小的改进?

相关内容

  • 没有找到相关文章

最新更新