我有一个高速ADC数据捕获/分析程序,在旧计算机上表现不佳。当一位测试工程师报告应用程序挂起时,我在客户实验室的beta测试中发现了这一点。事实证明,她的实验室中有一台旧电脑(单核P4),而“挂起”是计算机需要很长时间才能完成一些计算。
我想在启动时计算“计算能力”,并警告客户如果计算出的功率低于某个截止点,某些功能会非常慢。请注意,CPU速度不是我所追求的(P4以2.4 GHz运行)。
我认为如果家庭/型号低于某个截止点,我可以获得CPU系列/型号/步进并显示警告,但我不认为这种方法是可行的,因为P4的系列比i7更高的家庭。使用表格是因为必须维护表格。
我可以使用基准算法,例如whetstone / Dhrystone /等等,但我不想再增加启动时间而不是必要的。
我是否有另一种方法可以在没有花费大量时间启动的情况下实现这一目标?
TIA
答案 0 :(得分:6)
最好运行一个小的实际计算(包括一些包含的样本数据)并为操作计时。
至于启动时间问题,您可以在安装程序期间进行测试,也可以在第一次运行时仅在启动时运行它(然后存储一个标志,表明它已经运行)。
答案 1 :(得分:4)
有一个进度条或类似内容,以便有一些应用程序没有崩溃的反馈。
(例如,将来你的计算机速度可能会提高一倍,但你的数据集却要大30倍。你曾经考虑过的计算机看起来很快就会死了)
答案 2 :(得分:2)
不是在启动时运行检查,而是为您的应用程序创建一个安装,然后运行检查和必要的警告。
我同意保持一张合适且不合适的筹码表会很痛苦。我会坚持使用哪种基准算法最接近跟踪程序将执行的计算类型,并设置一个阻止安装的最低分数。
答案 3 :(得分:0)
结合使用您的真实计算和样本数据运行您自己的一些基准功能的一些想法,我认为为用户提供将结果上传到您的网站的机会是明智的。然后,您的网站可以显示图表,显示CPU类型和速度的许多组合的结果。这将使您的程序的新用户在安装程序之前知道他们需要什么类型的系统。
答案 4 :(得分:0)
如果我们以正确的方式设计前端(UI)和后端(功能),即使计算速度很慢,程序和计算机都不会挂起。
我建议您使用多线程来克服这个挂起问题,而不是警告,您可以确定大多数人会忽略,直到他们看到实际挂起。
这个答案可能不是你的问题,而只是一个建议。