web-dev-qa-db-ja.com

Chrome DevToolsでカスタムCPUスロットリングを設定することは可能ですか?

私はGoogleを使用していますChrome 63。

PerformanceタブのDevToolsには、「スロットルなし」、「4xスローダウン」、「6xスローダウン」の3つのCPUスロットリング設定があります。

「20xスローダウン」など、カスタムのスロットルを設定することは可能ですか? chrome.exeファイルにいくつかのフラグを設定するか、NodeJSライブラリを介してプログラムで行うことができます。

Lighthouseライブラリにある種類の 役に立つ関数 があることがわかりましたが、その内部のデフォルト値を変更すると(CPU_THROTTLE_METRICSは等しいようです)から4)4から(たとえば)20まで実行して、実際に20倍の速度になっていることを確認するにはどうすればよいですか?

また、そのようなシミュレートされた「スローダウン」をGPUに同様の方法で実行することが可能である場合、私は知りたいですか?

アドバイスありがとうございます。

18
Chris92

灯台はEmulation.setCPUThrottlingRate Chrome DevTools Protocolのコマンド:

https://chromedevtools.github.io/devtools-protocol/tot/Emulation#method-setCPUThrottlingRate

この方法でプロトコルを監視できます。

https://umaar.com/dev-tips/166-protocol-monitor/

このコマンドは、パフォーマンスパネルのスロットル設定で切り替えると、プロトコルログに表示されます。

それが機能するかどうかを確認する方法を尋ねている場合-Chromiumソースコードからの実装は次のとおりです。

https://github.com/chromium/chromium/blob/master/third_party/blink/renderer/platform/scheduler/util/thread_cpu_throttler.h#L21

// This class is used to slow down the main thread for // inspector "cpu throttling". It does it by spawning an // additional thread which frequently interrupts main thread // and sleeps.

お役に立てれば。

3
Max

Linuxではcpulimitを使用できます

Sudo apt-get install cpulimit
# -l 5 means 5% , or 20x slowdown
cpulimit -l 5 chromium-browser
0
cadoman