メモリ使用量を3割以上削減!? Microsoft Edgeの新機能「スリーピングタブ」を調査してみたWindows 10 The Latest

Chromium版Microsoft Edgeのバージョン89で導入された「スリーピングタブ」機能の効果を調べてみた。「スリーピングタブ」は、非アクティブな状態のタブをスリープして、メモリ使用量やCPU使用率を削減する機能だ。今回は、メモリ使用量に着目して、どの程度の効果があるのか調べてみた。

» 2021年03月22日 05時00分 公開
[小林章彦デジタルアドバンテージ]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「Windows 10 The Latest」のインデックス

連載目次

Chromium版Microsoft Edgeで実装された「スリーピングタブ」とは Chromium版Microsoft Edgeで実装された「スリーピングタブ」とは
Chromium版Microsoft Edgeバージョン89で非アクティブなタブをスリープさせることで、メモリ消費量/CPU使用率を低減させる「スリーピングタブ」が導入された。どの程度効果があるのか検証してみた。

 2021年3月9日にMicrosoft Edge(以下、旧Edge)のサポートが終了し、2021年4月には旧Edgeを削除する更新プログラムが提供されるという。以降、Windows 10の標準Webブラウザは、ChromiumベースのMicrosoft Edge(以下、Chromium版Edge)になる。

 既にChromiumベースのWebブラウザとしては、Google Chrome(以下、Chrome)が大きなシェアを持っており、その中でChromium版Edgeは存在価値を示せるのか疑問も持たれていた。

 しかし、Chromium版Edgeはバージョンアップを重ねるごとに、Chromeにはない機能が実装されるようになり、独自性が高まっている。例えば、Tech TIPS「Microsoft EdgeでWebページ全体をキャプチャーする」で紹介したWebキャプチャ機能や、Tech TIPS「気付けば『タブ』だらけなあなたに朗報? Chromium版Edgeの新機能『垂直タブ』を試してみる」で紹介した垂直タブといった機能だ。

 Chromium版Edgeバージョン89では、さらに魅力的な機能「スリーピングタブ(Sleeping Tabs:タブのスリープ状態機能)」が実装されている。この「スリーピングタブ」は、Chromiumで実装されている「フリージング(freezing)技術」をベースに開発されており、非アクティブなタブをスリープしてメモリ使用量やCPU使用率の低減を図るというものだ。原稿執筆時点では、Chromeには実装されていない、Chromium版Edgeの独自機能となっている。

 本稿では、この「スリーピンタブ」がどのような機能なのか、どういった効果があるのかについて調べていく。また、同様にメモリ使用量/CPU使用率を下げる「タブディスカーディング(Tab Discarding:タブの廃棄)」との違いについても見ていく。

Webブラウザのメモリ使用量は意外と大きい

 Webブラウザで作業を行っていると、いつの間にか多くのタブが開いた状態となっていることはないだろうか。このような状態では、WebブラウザによるメモリやCPUの使用量が増え、Windows 10自体が重くなり、他のアプリケーションを開いたり、切り替えたりする際に時間がかかるようになる。特に最近では、Webページに多くの画像が用いられ、ビデオやスクリプトなどが使われ、リッチになっていることから、Webブラウザのメモリ使用量が増えてきている。

 例えば、Facebookの場合、表示しているページなどにもよるが、133MBほどメモリを消費している(FacebookのWindows Insiderページを表示した場合)。こうしたWebページを10サイトほど開くだけで、1GB以上のメモリが消費されることになる。タスクマネージャーの[プロセス]でメモリ使用量やCPU使用率を見ると、意外なほどWebブラウザによって消費されていることに驚くはずだ。

Webブラウザのメモリ使用量は意外と大きい Webブラウザのメモリ使用量は意外と大きい
Webページ自体の容量が大きくなっていることに加え、ページ表示の高速化のためにページ内のリンク先を先読みしてキャッシュするなどの機能により、Webブラウザのメモリ使用量は増えている。調べごとをしていて複数のWebページを開くだけで、すぐに1GB以上のメモリが消費されてしまう。

 そこで、導入されたのが「スリーピングタブ」である。タブがアクティブではない(非アクティブ)状態で指定した時間が過ぎると、自動的にタブがスリープ状態になり、メモリ消費量やCPUの使用率が抑えられるというものだ。

 タブがスリープ状態になるといっても、タブが閉じられるわけではなく、リソースの使用を最小限に抑えるために、スクリプトなどの実行を一時停止するものだ。タブをアクティブにすると、Webページの動作などが再開される。

 当然ながら、非アクティブなタブがスリープ状態になると、バックグラウンドでストリーミングにより音楽を再生していたり、Web会議中に別タブで資料を見ている状態だったりすると音が止まってしまうことになる。そこで、「スリーピングタブ」では、音が出力されているWebページなど、スリープ状態になると都合の悪いWebページについては、非アクティブであってもスリープ状態とはならないようになっている。

 また、設定によって、特定のWebページをスリープ状態としない(除外する)こともできる。

 デフォルトでは、スリーピングタブ機能は有効になっており、2時間アクティブにしていないとスリープ状態になる。除外するWebサイトなどの指定もないので、場合によってはChromium版Edgeが自動的にバージョンアップされたことで、スリーピングタブ機能が働き、特定のWebページの表示がおかしくなっている可能性もある。最近表示がおかしくなったと感じるのであれば、スリーピングタブ機能が原因の可能性があるので、後述の方法でスリーピングタブを無効にしたり、表示がおかしくなるWebサイトを除外するように設定したりするとよい。

スリーピングタブ機能を設定する

 スリーピングタブ機能は、前述の通り、デフォルトで有効になっており、特に設定しなくても、非アクティブ状態で2時間が経過するとタブがスリープ状態になるようになっている。

 スリープするまでの時間を短くしたり、無効化したりするには、[設定]ページを開いて行う。それには、Edgeのウィンドウ右上の[…]アイコンをクリックして、メニューで[設定]を選択する。新しいタブで[設定]ページが開くので、左ペインで[システム]を選択する(アドレスバーに「edge://settings/system」と入力してもよい)。無効化するには、右ペインの「リソースの節約」欄の「スリープタブでリソースを保存する」のスイッチを「オフ」にする(デフォルトで「オン」)。

 また、スリープ状態に移行するまでの時間は、「スリープタブでリソースを保存する」のスイッチを「オン」の状態にすると、「非アクティブなタブを、……」のプルダウンリストで選択可能になる(デフォルトは2時間)。時間は、5分/15分/30分/1時間/2時間/3時間/6時間/12時間から選択可能だ。

スリーピングタブの設定を変更する(1) スリーピングタブの設定を変更する(1)
アドレスバーの右側にある[…]アイコンをクリックし、メニューで[設定]を選択する。
スリーピングタブの設定を変更する(2) スリーピングタブの設定を変更する(2)
左ペインで[システム]を選択し、右ペインの「リソースの節約」欄にある「スリープタブでリソースを保存する」のスイッチを「オフ(有効)」または「オフ(無効)」にする。このスイッチが「オン」になっている場合は、スリープ状態になるまでの時間の設定が可能だ。

 また、スリープ状態にしたくないサイトは、「これらのサイトをスリープ状態にしない」の[追加]ボタンをクリックして、ドメイン名を指定すればよい。

除外サイトを追加する(1) 除外サイトを追加する(1)
[設定]−[システム]ページを開き、「リソースの節約」欄にある「これらのサイトをスリープ状態にしない」の[追加]ボタンをクリックする。[サイトの追加]ダイアログが表示されるので、ここで除外したいサイトのドメイン名を入力して、[追加]ボタンをクリックする。
除外サイトを追加する(2) 除外サイトを追加する(2)
追加したサイト名は、「これらのサイトをスリープ状態にしない」の下に一覧表示される。サイトを削除したい場合は、サイト名の右側にある[…]をクリックして、メニューで[削除]を選択すればよい。

タブがスリープ状態かどうか判別する方法

 設定した時間が経過すると、タブのアイコンがグレーアウトして、スリープ状態になっていることを示される。また、スリープ状態になったタブにマウスホバー(マウスポインターを重ねる)すると、「このタブはリソースを節約するため、スリープ状態にしています」と表示されることで確認できる。

タブがスリープ状態かどうか判別する タブがスリープ状態かどうか判別する
タブがスリープ状態になると、タブアイコンがグレーアウトする。また、タブにマウスホバーすると、スリープ状態であると示される。

スリーピングタブ機能の効果

 MicrosoftのWindows Blog「Sleeping Tabs in Microsoft Edge: Delivering better browser performance」によれば、メモリ使用量で32%、CPU使用率で37%の削減効果があるとしている。

 タブごとのCPU使用率を計測するのは難しいので、ここではメモリ使用量に着目して、幾つかのWebページで計測して効果を確かめてみた。[設定]−[システム]ページの「リソースの節約」欄で、「非アクティブなタブを、指定された時間が経過した後、スリープ状態にします」を[5分間の非アクティブ状態]に設定して動作を確認している。

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。