大家好,
这是一个更普遍的问题,但基本上我想比较两个多媒体软件应用程序的性能。尽管它们在做同样的事情,但它们运行在不同的平台上,并且对实现也一无所知。我得到了一些不同的性能数据,我正在尝试推理可能的情况。到目前为止,我想出了以下内容:
软件优化带来更好的性能:
- 以更高的代码内存占用为代价进行循环展开
- 对存储在内存中的结果进行预计算,但会占用更高的数据内存
底层硬件架构带来更好的性能
- 以更高的时钟速度运行
- 为应用程序提供更好的硬件支持
- 更好的缓存机会
有人能想到别的东西吗?还是仅此而已?
谢谢, 西蒙
最佳答案
我想说:
- 如果您对实现一无所知,您就不会对该实现的工作原理感兴趣,包括循环展开和所有内容。
- 在该抽象级别上,您可能希望衡量与最终用户相关的性能目标,例如 in this Wikipedia article .
- 特别是,对于单用户系统,响应时间和吞吐量更为重要;而对于多用户系统,并发性和吞吐量很重要。前者受主频和UI设计的影响;后者还受到缓存大小和高负载下整体系统行为的影响。
- Martin Fowler 在他的 PoEA 中对绩效指标进行了很好的回顾。 ,
关于performance - 比较软件实现的性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2346928/