Windows 我可以使用什么工具来确定应用程序的硬件要求?

Windows 我可以使用什么工具来确定应用程序的硬件要求?,windows,performance,hardware,profiling,requirements,Windows,Performance,Hardware,Profiling,Requirements,普通读者:传奇™ 继续 我的应用程序在我的开发机器上运行良好——这台机器是(5年前)作为相当好的游戏装备购买的。因此,它是64位的,具有2.2GHz的时钟速度和2GB的内存 然而,工作中的机器是标准的戴尔办公电脑,甚至很难启动我的应用程序,更不用说运行它了 (解释……我可以想象人们对我大喊大叫:“你到底在做什么来要求这样的规格?”嗯,我正在做很多实时图像分析和音频生成。就这样。) 我们的团队有预算购买一台专用笔记本电脑(需要便携式)来运行它。所以现在我的任务是生成所需的最低规格 我可以使用什么工

普通读者:传奇™ 继续

我的应用程序在我的开发机器上运行良好——这台机器是(5年前)作为相当好的游戏装备购买的。因此,它是64位的,具有2.2GHz的时钟速度和2GB的内存

然而,工作中的机器是标准的戴尔办公电脑,甚至很难启动我的应用程序,更不用说运行它了

(解释……我可以想象人们对我大喊大叫:“你到底在做什么来要求这样的规格?”嗯,我正在做很多实时图像分析和音频生成。就这样。)

我们的团队有预算购买一台专用笔记本电脑(需要便携式)来运行它。所以现在我的任务是生成所需的最低规格

我可以使用什么工具来确定能够舒适运行我的应用程序的最低规格


更新:到目前为止的答案虽然有用,但更多地关注于分析的替代方案。所以我已经悬赏,看看是否有任何软件可以做这类事情。

没有什么比真实世界的测试更好

尝试在各种硬件上运行你的应用程序,并根据你对可接受性能的感知提出建议的最低要求


注意:绝对最低硬件要求和推荐的最低可接受要求(听起来像是您真正想要的)之间通常存在很大差异。

一个选项是创建一系列具有不同系统配置的虚拟机,并在每个虚拟机中试用您的应用程序(您将希望在高性能计算机上执行此操作)。这样,您可以调整虚拟机的内存量、CPU类型等,并在各种系统上模拟测试软件。在测试时,您可以使用Windows任务管理器查看应用程序使用的主机CPU和内存的数量。为了获得舒适的体验,您将希望应用程序与物理内存一样适合可能(加上操作系统和其他后台服务约1-1.5 GB)


另外,请记住您的应用程序是否具有任何需要硬件支持的功能(DirectX 11、CUDA等),并确保您将其包含在硬件要求中。

从简要信息中可以看出,您的PC并不是特别高的规格。您所看到的Dell机器运行速度慢的规格是什么

我会尝试另一台电脑,以防“工作”机器只是糟糕的软件构建(猜测) 标准XP磁盘控制器驱动程序等)

我一般不建议走虚拟机路线,因为这实际上只对限制RAM使用有好处。但是,如果您需要检查替代操作系统/服务包,那么虚拟机是一个不错的选择


最后,你说应用程序加载速度慢,它在加载时做什么?也许可以看看性能监视器,看看它是磁盘、RAM还是CPU受限。使用谷歌查找有用的计数器来监控每个应用程序。

你有权使用好的探查器吗?我认为了解性能瓶颈是值得的如果你的应用程序是CPU绑定的,那么你显然会考虑在高端处理器上进行挥霍。应用程序是多线程的吗?如果是,你的应用程序是利用多个处理器还是因为同步而被序列化?

如果应用程序是IO绑定的,也许您应该考虑获得SSD驱动器。

也许应用程序花了太多的时间分页?等等


如果您有权访问Visual Studio 2010 Ultimate,我建议您查看。它将帮助您可视化程序中发生的情况,并确定性能瓶颈。它将向您显示应用程序花费的时间:等待IO、内存管理等。,而此工具肯定不会告诉您最小的时间dware要求是,它应该能让你很好地了解哪些硬件改进将有助于你的应用程序更好地运行。如果你没有VS2010,你可能可以使用任何好的探查器进行类似的分析。并发可视化器的酷之处在于它专注于展示并发和多线程性能问题。

请原谅我说的b****g很明显,但:

使用软件检查软件的硬件要求。

我不太明白为什么你的开发机器的规格不仅仅是你打算购买的笔记本电脑所需的规格。但是如果出于某种原因,这还不够好,可以在其他规格的硬件上运行你的软件。例如,你可以从你的开发机器中拿出1GB的RAM,看看用更少的内存情况如何你有空吗


有大量的基准测试软件可用于各种任务。例如,LINPACK经常用于对超级计算机进行基准测试。所有这些现成的基准测试和一般方法中的缺陷在于,它们只能为您提供有关计算机如何运行基准测试的良好信息。转换基准测试结果预测软件的硬件性能与其说是一门科学,不如说是一门艺术。在超级计算机世界中,组织机构在购买新平台之前对自己的关键应用程序进行基准测试。

您可以尝试对代码进行一点优化,使其在低规格的机器上运行。如果失败,您只需进行测试您的应用程序可以在各种候选机器上运行,以了解您需要什么才能获得可接受的性能。谢谢Paul。我已经尽我有限的开发技能进行了优化。(如果您感兴趣,请随时查看源代码。我将非常感谢您的帮助!)后一种选择是我的备份,但由于我们购买的是一台专用机器,所以第一次就把它做好就好了。这一点也不奇怪……标准的Dell office PC运行的是带有慢速ram的Celeron。如果它运行良好