chrome メモリ 制限 方法|数値ではなく開き方で抑える

Chromeのメモリを制限したいという要望はまっとうだ。仕事用のMacでは、たいていブラウザが最も大きな使用者で、しかも他のどのアプリよりも長く開いたままになる。困るのは、Chromeに上限値を入力する欄が用意されていない点だ。制限は数値ではなく振る舞いで作ることになり、そこで効く振る舞いは、多くの解説が最初に挙げるものとは違う。

メモリの単位はタブではなくプロセス

Chromeはタブ単位でメモリを配っていない。プロセス単位で確保していて、そのプロセスの数を決めているのは、タブバーに並んだ枚数ではなく、開いているサイトの種類になる。異なるサイトのページは別々のプロセスに置かれ、それぞれが制限された領域の中で動く。安全のための作りだが、メモリの計算にもそのまま効いてくる。

ここから言えることが2つある。

1つは、同じWebアプリのタブを12枚開いている状態と、違うサービスを12種類開いている状態では、必要な量がまるで違うことだ。同じサービスのタブを6枚閉じても、ほとんど減らないことがある。逆に、そのサイトを開いていた最後の1枚を閉じると、プロセスがまるごと消える。

もう1つは、ページの中に埋め込まれた外部のものも数に入ることだ。動画の再生枠、問い合わせのウィジェット、決済の枠、集計の画面が同居しているページは、メモリの側から見ると1枚のページではない。単純なページ10枚より、管理画面1枚のほうが重いことがあるのはこのためになる。

したがって、タブの枚数を数えているうちは、制限したい対象を数えられていない。数えるべきなのは、生かしたまま置いてあるサービスの種類だ。同じプロファイルで窓を2つに分けても、この数は変わらない。

メモリセーバーの3段階が唯一の絞り

Chromeに用意されている調整は、設定のパフォーマンスにあるメモリセーバーで、使っていないタブを止め、戻ったときに読み込み直す仕組みになっている。あまり開かれないのが、その強さを選ぶ部分だ。

適度: メモリを適度に節約します。タブは長時間経過してから非アクティブになります。 バランス重視(推奨) : メモリをバランスよく節約します。タブは最適な時間が経過してから非アクティブになります。 最大: メモリを最大限に節約します。タブは短時間経過してから非アクティブになります。 出典: support.google.com

3段階が変えているのは1つだけで、触られないまま何分放置されたら止めるか、という長さになる。最大は圧縮が強くなる設定ではなく、待ち時間が短くなる設定だ。

そう理解すると選び方は単純になる。調べもののタブを一度に十数枚開いて、その日のうちに用が済み、二度と戻らない使い方なら、最大にしても失うものは無い。一方、同じ道具を一日中開いておいて数時間おきに覗きに行く使い方だと、最大は毎回読み込み直しを起こす。後者はバランス重視か適度のほうが体感がよい。

同時にオンにしておきたいのが、アクティブでないタブのデザインだ。眠っているタブのアイコンがリングの中に表示されるようになるので、強さの設定が何をしているのかが目に見える。これが無いと、読み込み直しが起きた瞬間しか手がかりがない。

誰も数えていない常駐費用が拡張機能

タブは目に見えるので疑われる。拡張機能は見えないまま常駐するので疑われないが、費用は上回ることがある。背後で動く種類の拡張機能は、ページを1枚も開いていなくてもメモリを持っている。Chromeのタスクマネージャでは、これがタブとは別の行として並ぶ。

棚卸しは年に一度で足りる。質問も短い。いま使っているか。全部のサイトで動く必要があるか。ブラウザの外のアプリで代わりになるものはないか。

外すほどではないが常時動かす必要も無い、という拡張機能には中間の選択肢がある。拡張機能の詳細から、サイトへのアクセス権を「クリックされた場合のみ」「特定のサイト」「すべてのサイト」から選べるようになっていて、既定ですべてのサイトになっているものを絞れる。すべてのページで処理が差し込まれる状態が消えるので、開いているタブの重さそのものが変わることもある。翻訳や画面の取り込みのように、必要な瞬間が決まっている道具ほど効果が出やすい。

いま見直す理由がもう1つある。Manifest V2の拡張機能はChrome 138で無効になり、残っているものの扱いも公表されている。

残りの Manifest V2 拡張機能がすべて Chrome ウェブストアから削除されます。Chrome 138 以前にインストールされた Manifest V2 拡張機能は引き続きインストールされますが、更新を受け取ることができず、Chrome から削除された後に Chrome ウェブストアから再インストールすることはできません。 出典: developer.chrome.com

この世代のまま残っているものは、もう手入れされていない。外す理由としては十分で、外せばメモリも戻る。とくに「メモリを管理します」と称する拡張機能には、この判断がそのまま当てはまる。常駐するプロセスを1つ増やす代わりに、節約の約束を受け取ることになるからだ。

効く操作と、効いているように見えるだけの操作

片づけたつもりの操作が、メモリを何も返していないことがある。何が起きるのかを並べると、無駄な手間が減る。

操作 メモリへの効果 引き換えに失うもの
タブを閉じる 解放される。そのサイト最後の1枚ならプロセスごと消える ページと入力途中の状態
タブを固定する 減らない。固定タブは非アクティブにならない 意図して常駐させることになる
ブックマークして閉じる 閉じたときと同じ 開き直すと最初から
グループにして折りたたむ それだけでは減らない。読み込まれたまま 見た目が整うだけ
拡張機能を無効にする 常駐部分が解放される 機能が使えなくなる
同じプロファイルで窓を増やす 減らない。プロセスは共通 画面が広がるだけ

驚かれるのは下から2行を除く2つで、タブグループを折りたたんでもタブバーが整うだけであること、そして同じプロファイルの窓を分けても計算が変わらないことになる。

表のとおり、実際に減らすのは閉じる操作なのに、閉じる判断はいちばん先延ばしにされやすい。理由ははっきりしていて、また探す羽目になるのが嫌だからだ。判断を軽くするには、「後でまた開くか」ではなく「今日のうちにもう一度使うか」を基準にするとよい。うっかり閉じた直後なら、キーボードの⌘とShiftとTで開き直せるし、それより前のものは履歴に残っている。閉じることの取り返しがつくと分かっていれば、常駐させる顔ぶれは自然と短くなる。

固定タブの行は不具合ではない。ヘルプは、非アクティブにできない状況の1つとして固定タブを挙げていて、他にはアクティブな音声や動画、画面共有、ページ通知、アクティブなダウンロード、一部記入済みのフォーム、接続済みのデバイスが並ぶ。固定は「これは生かしておく」という宣言なので、2つか3つの道具にだけ使い、12枚並べる使い方はしないほうがよい。

そもそも厳密な上限があったら何が起きるか

望んでいるものの形も一度確かめておきたい。厳密な上限を守るブラウザは、その線に達した瞬間に何かを追い出すことになる。しかも、どのページが大事なのかをブラウザは知らない。結果として起きるのは、いま嫌われているのと同じ読み込み直しで、しかも予告なく、作業の途中で起きる。

Chromeの作りは、その判断を使う側に渡している。放置時間で決める強さ、眠らせたくないサイトの指定、誰が重いのかを見るタスクマネージャ。数値ではなく方針として表した上限で、調整には数分しかかからない。

土台にある本当の上限はOSが持っている。メモリが足りなくなればmacOSが停止中の内容を圧縮し、それでも足りなければディスクへ退避する。ここは設定する場所ではないし、ブラウザ側の設定で覆すこともできない。

ブラウザだけでなく、Mac全体の予算で考える

制限は、他に何が動くかとの関係でしか意味を持たない。通話や画面共有をするMac、大きなファイルを開くエディタを使うMacでは、ブラウザは「眠らせられないし読み込み直せないアプリ」と場所を取り合っている。ブラウザにいくら持たせてよいかを決めるのは、実際には他のアプリがいくら必要かを決めることになる。

ブラウザ単体で何メガバイトに抑えるか、という目標は立てにくい。開いている中身によって適正な量が変わるうえ、抑えた結果として読み込み直しが増えれば、待ち時間という別の費用に化けるだけだからだ。判断の基準は使用量そのものではなく、他のアプリが引っかからずに動いているかどうかに置いたほうがよい。

この見方に切り替えると、目標が具体になる。普段の1週間で最も混む瞬間に、どのアプリが同時に動いていて、そこにブラウザは場所を残せているか。週に一度の画面共有つきの打ち合わせが山なら、控えめでいてほしいのはその1時間だけで、残りの時間は好きに使ってよい。

その1時間のための手当ても、恒久的な設定にしないほうがよい。用の済んだタブを隠さずに閉じる、参照を大量に開いた日は強さを最大にする、重い作業の前にブラウザを一度終了して開き直す、通話の前に同じサイトの他のタブを閉じる。どれも数秒で済み、翌日には戻せる。たまの山を平常の設定にしてしまうと、メールのタブが一日に4回読み込み直される暮らしになる。

月に一度、同じ条件で測る

数字を取るなら、片づけた直後ではなく、普段どおりに作業している最中のほうがよい。見るのは2つで、載っているサイトの種類がいくつあるか、そのうち拡張機能の行がいくつあるか。合計の使用量は日によって大きく動くが、この2つはゆっくりしか動かないので、比べる価値がある。仕事の中身が変わっていないのに両方が増えているなら、惰性で開いたままになっているものがある。

制限は設定ではなく、置き場所の形で決まる

ブラウザのメモリを長く低く保つ方法のうち、いちばん持続するものは設定ではない。どのアプリを常駐させてよいかという決定になる。

顔ぶれはたいてい即答できる。メール、チャット、カレンダー、案件の管理、社内のシステムが1つか2つ。それ以外は通りすがりだ。問題は、1つの窓が両方を同じ扱いにしていることで、常駐する側は静かに増えていき、気づいたときの手当ては「40枚をまとめて閉じる」しかなくなる。

アプリごとに窓を分けておくと、常駐している顔ぶれが目に見えるようになり、増えたことにも気づける。場所を持っているか、持っていないか、の2択になり、後者は考えずに閉じられる。アプリごとに独立したワークスペースを持つ形がこれで、どういう単位でまとめられるのかはワークスペースに、対応しているサービスの範囲は使えるアプリにまとまっている。同じ発想の製品どうしで考え方がどう違うのかはRamboxとの比較で確認できる。

順番として最初にやるのは、タスクマネージャをメモリ使用量で並べ替え、タブの枚数ではなく「何種類のサイトが載っているか」を数えることになる。常駐する価値が無くなった拡張機能を外し、メモリセーバーの強さを実際の放置時間に合わせる。それでも常駐の顔ぶれが5つを超えているなら、次に変えるのは設定ではなく置き場所のほうになる。

よくある質問

起動時にメモリの上限を指定する方法はありますか?

ブラウザ全体にもタブにも上限を課す正式な起動オプションはありません。Chromeは必要に応じてOSからメモリを受け取り、タブを閉じたり非アクティブにしたりしたときに返しています。使える手段はメモリセーバーの強さ、常にアクティブにするサイトの指定、タブの固定、そして同時に開くサービスの種類を減らすことになります。

タブグループにまとめるとメモリは減りますか?

折りたたんでも読み込まれたままなので、それだけでは減りません。グループは整理のための機能で、メモリのための機能ではありません。減るのはメモリセーバーが非アクティブにしたときか、実際に閉じたときです。用が済んだ一群を見つけやすくなるという意味では、間接的に役立ちます。

メモリ管理をうたう拡張機能は入れる価値がありますか?

その拡張機能自体が常駐プロセスを1つ増やすため、節約分がその費用を上回って初めて得になります。Chromeには放置されたタブを止める仕組みが最初から入っていて、強さと除外の指定もできます。検討するなら、更新が続いているかを先に確認してください。Manifest V2の拡張機能は更新も再インストールもできなくなっています。

タブを何枚も閉じたのに、ほとんど減らないのはなぜですか?

メモリがプロセス単位で保持されていて、同じサイトのページは1つのプロセスを共有しているためです。同じWebアプリのタブを6枚閉じてもほとんど戻りませんが、そのサイトを開いていた最後の1枚を閉じるとプロセスごと消えます。枚数より、開いているサイトの種類を数えたほうが予測が当たります。

記事一覧へ戻る