评估软件最低要求 [英] Evaluate software minimum requirements

查看:118
本文介绍了评估软件最低要求的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有没有办法评估软件的最低要求?我的意思是,例如,我如何才能发现我的应用程序需要的最小RAM数量?

Is there a way to evaluate the minimum requirements of a software? I mean, how can I discover, for example, the minimum amount of RAM that my application will need?

谢谢!

推荐答案

分析器无法在这里为您提供帮助.两者都不会估计数据结构的大小.

A profiler will not help you here. Neither will estimating the size of data structures.

探查器可以肯定地告诉您代码在哪里花费了最多的CPU时间,但不会告诉您是否缺少性能目标-例如,您的用户对应用程序在任何给定系统上的性能感到满意还是不满意.

A profiler can certainly tell you where your code is spending the most CPU time, but it will not tell you if you are missing performance targets - e.g. if your users will be happy, or unhappy with the performance of your application on any given system.

仅计算数据结构的大小,并且一次只能分配多少个结构,根本就无法使您准确地了解一段时间内的内存使用情况.原因是内存使用量由许多其他因素决定,包括应用程序执行多少I/O,应用程序使用什么OS服务以及最重要的是应用程序使用内存的时间性质.

Simply computing the size of data structures, and how many may be allocated at any one time will not at all give you an accurate picture of memory usage over time. The reason is that memory usage is determined by many other factors including how much I/O your application does, what OS services your application uses, and most importantly the temporal nature of how your application uses memory.

了解最低要求的最有效方法是

The most effective way to understand minimum requirements is to

  • 使用对您的用户很重要的指标,确保您有一种有效的方式来衡量效果.最好的指标是响应时间.根据您的应用程序,诸如吞吐量或每秒操作数之类的速率可能适用.您的测量可能是凭经验进行的(例如,只需尝试一下),但效果最低.最好使用某种仪器完成此操作.在Windows上,选择为[ETW] [1].其他操作系统具有其他合适的机制.
  • 具有某种执行应用程序的自动化方法.这将使您进行重复和可靠的测量.
  • 使用各种内存大小来测量应用程序,并查看性能开始下降的地方.这也可能会暴露出性能漏洞,从而导致您的应用程序无法正常运行.如果您可以访问各种性能级别的平台,请也使用它们.您没有说明应用程序的功能,但是对于许多(并非全部)客户端应用程序,在具有1GB内存的上网本上进行测试非常有用.
  • Make sure you have an effective way of measuring performance using metrics that are important to your user. the best metric is response time. Depending on your app, a rate such as throughput or operations per second may be applicable. Your measurements could be empirical (e.g. just try it) but that is least effective. This is best done with some kind of instrumentation. On windows, the choice is [ETW][1]. Other operating systems have other suitable mechanisms.
  • Have some kind of automated method of exercising your application. This will let you make repeated and reliable measurements.
  • Measure your application using various memory sizes and see where performance begins to suffer. This may also expose performance bugs that prevent your application from performing well. If you have access to platforms of various performance levels, use those as well. You didn't indicate what your app does, but testing on a netbook with 1GB of memory is great for many (not all) client applications.

您可以对CPU和其他组件(例如磁盘,网络或GPU)执行相同的操作.

You can do the same with the CPU and other components such as disk, networking or the GPU.

还要注意,这里没有简单的答案-在设定最低要求上做有效的工作是真正的工作.如果您的应用程序对一个或多个平台方面都具有参与性,则尤其如此.

Also note that there is no simple answer here - doing an effective job at setting minimum requirements is real work. This is especially true if your application is participatory sensitive to one platform aspect or another.

还有其他因素-例如,您的应用程序可能在一种配置中运行良好,直到用户打开另一个可能会占用内存或CPU的应用程序.用户很少只打开一个应用程序.

There are other factors as well - for example, your app may run fine in one configuration until the user opens another application that may be memory hungry or a CPU pig. Users rarely only have one application open.

这意味着,除了指定最低要求之外,您还必须在设置用户期望方面做得有效-这说明了您的应用程序何时会运行良好,何时无法运行以及影响性能的因素是什么.

This means that in addition to specifying minimum requirements you must do an effective job in setting user expectations - that is explaining when your application will perform well, and when it won't, and what the factors are that impact performance.

[1]: http://msdn.microsoft.com/en -us/library/ms751538.aspx 强文本

这篇关于评估软件最低要求的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆