【问题标题】:How to estimate an application's performance(CPU, I/O, Memory)如何估计应用程序的性能(CPU、I/O、内存)
【发布时间】:2016-08-02 05:40:04
【问题描述】:

已知:应用程序在服务器上运行性能

  • 性能指标:cpu、i/o、内存
  • 服务器硬件信息:CPU(核数、主频等)、内存、i/o

问题:如果有新的服务器,我可以得到新服务器的硬件信息,如何在不运行新服务器的情况下估计应用程序的运行性能(获取性能指标)? p>

有什么建议和方向吗?非常感谢~

【问题讨论】:

  • 为了做出粗略的猜测,您必须知道您的应用程序的性能如何缩放与您的服务器的许多不同特征中的每一个。例如您的应用程序主要是 I/O、内存带宽、内存延迟、CPU 性能的某些方面还是什么方面的瓶颈?改善一个因素最终会使其他因素成为最大的瓶颈。获取不同硬件数据的唯一半准确方法是运行自定义基准测试来模拟您的应用。

标签: benchmarking performance-testing estimation


【解决方案1】:

这很难,处理器指令可能会发生变化,总线速度较慢,磁盘速度较慢(HDD vs SDD,寻道时间会增加第一个选项的利用率),您需要考虑所有这些,您将需要知道你的系统如何使用它们中的每一个,但问题并没有到此结束,可能存在软限制,可能测试甚至没有使用所有资源,更容易获得机器并在实际硬件上运行测试。

此视频是由 Goranka Bjedov 进行的关于性能测试的演示,她是一个谷歌软件 工程师。

https://youtu.be/k9h51BM2h4

在演讲的最后,在问题部分,有人谈到了结果外推。这些是问题的答案:

“所以我在谷歌告诉你几件事我很幸运,因为我们数据中心的机器没有超级计算机,除非你看看我们是如何组织这些机器的,它们确实是一体的,但是真的是单独的盒子,它们和我办公室里的盒子几乎一样,所以在这方面我很幸运”

https://youtu.be/k9h51BM2h4w?t=3704

“你遇到了一个真正的问题,我的意思是你真的想在这台机器投入生产之前得到一些时间,如果系统还没有投入生产,那么获得它应该不难一周或周末或其他时间,因此您可以获得有关行为方式的一些数据,因为您无法从 *** 推断结果,您甚至不知道,我的意思是它是不同的操作系统,一切都不同。嗯,外推会杀了你,插值很好,但外推会杀了你,因为事情会在你没有预料到的情况下出错,或者用完一些你没想到的资源。”

https://youtu.be/k9h51BM2h4w?t=3780

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-08
    • 2020-08-11
    • 2011-05-07
    • 1970-01-01
    • 2020-01-19
    • 2017-05-17
    相关资源
    最近更新 更多