将一台设备上的计算时间转换为另一台设备的正确方法是什么?

问题描述 投票:0回答:1

我正在为我的硕士论文编写用python编写的遗传算法。有关公司希望计算时间不超过1分钟。 GA将在Windows平板电脑上实现。 GA的开发是在2013 MacBook Air上完成的。为了进行评估,我想针对不同的参数设置和各种情况在AWS / AZURE / ..上运行GA 100次。是否有类似CPU速度/万用表/ ...这样的量度用于将Macbook或云服务的计算时间转换为Windows平板电脑上计算时间的近似值。当然,也可以使用其他方法。

我知道计算机很复杂,许多方面都会影响计算时间。我认为最简化的解决方案可能是:

COMPUTATION_TIME_ON_MACBOOK = 50. #In seconds
SOME_SPEED_MEASURE_OF_MACBOOK = 600
SOME_SPEED_MEASURE_OF_WINDOWS_TABLET = 400

COMPUATION_TIME_ON_WINDOWS_TABLET = COMPUTATION_TIME_ON_MACBOOK * SOME_SPEED_MEASURE_OF_MACBOOK / SOME_SPEED_MEASURE_OF_WINDOWS_TABLET

print(COMPUATION_TIME_ON_WINDOWS_TABLET)
75 #An approximation of the computation time on the windows tablet in seconds
python computer-science computation-theory
1个回答
0
投票

您应该做的是创建一个性能模型,并使用您认为足够的参数-处理器频率,DRAM频率,SDD / HDD读写速率,网络上/下带宽和延迟等-然后运行多个硬件配置。获得数据后,可以通过将模型拟合到结果中来找到系数。如果找到适合的参数,则可以使用它。否则,您可能需要调整模型。

例如,如果CPU频率是X,DRAM频率是Y,SDD读/写是Z,没有网络或任何其他暗示,则您的模型可能是:

T(n) = (A/X +B/Y + CZ)n

我建议您在每次迭代中选择一个代表性的问题实例,将其固定为n,然后查看参数是否以及如何随n变化。祝你好运!

© www.soinside.com 2019 - 2024. All rights reserved.