我正在解决一个问题,我只是想确保我的工作是正确的,所以如果有人可以批评我,我们将不胜感激。
问题:
正在考虑两种架构改进(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。
再次,我只是想看看我的想法是否正确。任何帮助表示赞赏。
EDIT1:使用Mackie的方法
取基准标记的基准速度,A0将为以下内容:
B1 = B2 = B3 = B4 = B5 = 1
因此,基准与A1(A0 / A1)的规格比的几何平均值为:
((1 / 1.5)*(1/4)*(1/3)*(1/2)*(1/5))^(1/5)= 0.35
Base与A2的规格比(A0 / A2)的几何平均值为:
((1/3)*(1 / 1.5)*(1/4)*(1/4)*(1/3))^(1/5)= 0.34
然而,在这里(Base / A1)与(Base / A2)比较,得到0.35 / 0.34 = 1.03意味着A1比A2慢大约3%?我的数学是在这里还是我为A0选择了错误的基准?我的初始方法似乎更简单,最初的问题是什么......
答案 0 :(得分:2)
我建议计算两个架构改进中的每一个的几何平均值,然后比较得到的两个数字。这样你就可以将它们中的每一个与基础系统(得分为1.0)进行比较。当然,当你将两个数字分开时,你会得到与上面相同的结果(A1比A2慢0.96倍)。
这样做可以让您用一个数字来表征每台机器的性能。这是练习的重点。如果你有很多机器要比较,你的方法会更难......
答案 1 :(得分:0)
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代表平均任务并且运行时间的差异被视为随机的,那么最好选择的标准偏差是否最好?