![Chrome のメインプロセスはなぜこれほど多くのメモリを使用するのでしょうか?](https://rvso.com/image/1438418/Chrome%20%E3%81%AE%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E3%81%AF%E3%81%AA%E3%81%9C%E3%81%93%E3%82%8C%E3%81%BB%E3%81%A9%E5%A4%9A%E3%81%8F%E3%81%AE%E3%83%A1%E3%83%A2%E3%83%AA%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E3%81%AE%E3%81%A7%E3%81%97%E3%82%87%E3%81%86%E3%81%8B%3F.png)
ユーザーである私にとって、Chrome のメイン プロセス (「ブラウザ」) はまったく役に立たないように思えます。また、RAM の 1 GB 以上、つまりほぼ 10% を占有しているため、この RAM が何に使用されているのか興味があります。
Stats for Nerds によると、これらはすべてプライベートなメモリです。
答え1
Chromeが何をしているかは分かりません。しかし、xperfを使ってメモリ割り当てをキャプチャすることができます。Windows パフォーマンス ツールキットこのコマンドファイルを実行します:
@echo off
echo Press a key when ready to start...
pause
echo .
echo ...Capturing...
echo .
xperf -on PROC_THREAD+LOADER+VIRT_ALLOC -stackwalk VirtualAlloc+VirtualFree -BufferSize 1024 -MinBuffers 256 -MaxBuffers 256 -MaxFile 256 -FileMode Circular
echo Press a key when you want to stop...
pause
echo .
echo ...Stopping...
echo .
xperf -stop -d virtualalloc.etl
中を開けるとWindows パフォーマンス アナライザーコミット スタックを確認します。Chrome に適したスタックを取得するには、シンボル パス オプションで Chrome シンボル サーバーを指定する必要があります。
srv*C:\symbols\chrome*http://chromium-browser-symsrv.commondatastorage.googleapis.com;