【问题标题】:Slow down CPU to simulate slower computers in browser testing减慢 CPU 以模拟浏览器测试中速度较慢的计算机
【发布时间】:2011-06-08 02:31:48
【问题描述】:

我正在尝试查看我们的网页在普通客户的计算机上的表现。我们尚未确定此配置,但它可能比我们的开发人员和测试人员所拥有的要慢。

我看到过类似问题的答案,这些问题建议限制带宽并使用内存受限的 VM,但我是否还需要降低 CPU 速度?我的印象是,即使在 VM 中,CPU 也会以相当接近全速的速度运行。是否有允许您限制 CPU 周期的虚拟机平台?我看到一个建议运行像 Folding @ Home 之类的东西,但我欢迎其他建议来限制 CPU 速度。

我看过这个问题:How to Slow down the browser,以及其他谈论限制带宽的问题。

编辑:我想我还需要关心 VM 有多少内核/处理器可用。大多数 VM 平台是否允许您选择限制这一点?

【问题讨论】:

标签: performance testing virtualization


【解决方案1】:

这是一个快速的解决方案,但在最终用户规范方面不是很准确,但它有助于在较慢的系统上进行测试:

转到电源选项 -> 创建电源计划 -> 更改高级电源设置并将 CPU 最大速率设置为 5% 或您需要多少。

这通常有助于在较慢的配置上测试浏览器应用。

【讨论】:

    【解决方案2】:

    在运行 vista 或更好的多核系统中,您可以设置 cpu 亲和性,强制浏览器仅在单核上运行

    例如

    c:\windows\system32\cmd.exe /C start /affinity 1 notepad.exe
    

    如今,大多数机器上的单个内核并不比几代前快得多。也就是说,您会发现由于架构更改,缓存可能会更大,而 ram 会更快,这两者都会产生重大影响。

    您是否考虑过从 ebay 购买旧电脑或本地免费添加。我怀疑让一名员工进行必要的研究、设置有限的 ram vm 并为主要浏览器添加核心绑定快捷方式等的工资成本会为您购买相当多的旧盒子,并配备较旧的操作系统(如果您'真的很幸运所有最后的所有者间谍软件和浏览器工具栏可以更准确地模拟您的最终用户个人电脑)

    【讨论】:

    • 我想我希望找到一个可以限制 VM 可以使用的 CPU 或模拟能力较差的 CPU 的 VM 平台,但缺乏响应让我认为这是不可用的。我选择这个答案是为了获取有关如何至少限制核心的信息。
    • @Bernard Chen - Dos Box 模拟 386/486 并且可以在其上安装 win 3.1 或 95,但是我怀疑这对您的用户来说有点过分了。 SO上有另一个线程似乎也有一些想法stackoverflow.com/questions/284051/emulate-old-pc祝你好运!
    • 这真的会减慢任何速度吗?我的意思是...无论如何,我看不到 Netepad 能够在多个内核上运行。现代浏览器是否能够使用多核渲染页面和运行脚本?
    【解决方案3】:

    添加到CatalinBerta's answer 这对我来说非常有用。您还需要记住,您想要减慢的不仅仅是 CPU。

    浏览器通常依赖 GPU 来绘制和合成网页以及复杂的动画。如果您想模拟最坏的情况,请尝试在设备管理器中禁用所有显示适配器,这与使用公共图书馆计算机的客户端非常相似。

    对于Windows

    Start > 搜索 "设备管理器" > 展开 Display Adapters > 右键每个项目 > Disable

    【讨论】:

      【解决方案4】:

      似乎在二手电脑市场上购买一台“普通客户的电脑”会更简单。

      或者从零件自己构建。

      【讨论】:

      • 这可能是我们最终采取的方法。为了使其成为共享资源,我们可以启用某种远程访问。
      • 在我们的店里,演示电脑是最慢的电脑。它可以访问我们的网络驱动器,但我们可以访问演示室中的计算机。
      • 这是一个糟糕的建议。至少,您可以运行一个 VM 并限制它的 CPU 使用率来解决这个问题。除非你有备件,否则我看不出花费至少 100 美元来建造一台计算机会比一台虚拟机更好。
      【解决方案5】:

      我为 Windows 创建了一个免费的简单工具,允许任何人输入进程 ID 和所需的 CPU 速度百分比,然后它会继续为该进程模拟慢速 CPU。该实用程序本身几乎不消耗 CPU 时间,这是一个好处。 :)

      它叫做“Slow CPU Emulator”,在这里查看:https://github.com/mathusummut/SlowCpuEmulator

      预编译的二进制文件可以在这里找到:https://sourceforge.net/projects/slowcpu

      【讨论】:

      • 首先,应用程序本身是不言自明的并且是用户友好的,因此不需要使用说明。其次,答案直接解决了问题中提到的浏览器进程要减慢的问题。第三,示例代码不相关,工具本身不需要编码。最后,正如答案中已经提到的,该工具是免费和开源的。请在复制和粘贴这样的 cmets 之前阅读答案,在此先感谢。
      【解决方案6】:

      在 Mac 上也找到了解决方案。

      http://jesperrasmussen.com/blog/2013/03/07/limiting-cpu-cores-on-the-fly-in-os-x-mountain-lion/

      使用仪器应用,您可以限制一个或所有正在运行的进程的 CPU 使用率。

      【讨论】:

        【解决方案7】:

        VirtualBox 可以自定义虚拟机,使其仅在有限的 CPU 内核和 RAM 上运行。它可能会有所帮助。

        【讨论】:

          【解决方案8】:

          对于 MacOS/Linux,有 cpulimit

          在 Ubuntu 上安装:

          sudo apt install cpulimit
          

          【讨论】:

            猜你喜欢
            • 2014-04-20
            • 1970-01-01
            • 2014-09-29
            • 2017-09-18
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2013-08-29
            • 2011-10-17
            相关资源
            最近更新 更多