03月20日
16GBでもメモリ不足になります。メモリに優しくない使い方3選
M1チップを搭載したMac(Big Sur)でメモリ不足になる問題が報告されています。
Gigazine: https://gigazine.net/news/20211108-m1-macbook-pro-memory-leak/ で状況が分かります。
メモリを大量消費するアプリを終了させることで一時的な回避が可能のようです(2021年11月8日時点)。
また、macOS Monterey 12.0.1ではIntel Mac、M1両方でアプリケーションメモリエラーが発生する問題があるようです。
9to5mac: https://9to5mac.com/2021/11/02/application-memory-error-affecting-many-mac-apps-intel-as-well-as-m1/
↓の記事は、これら問題の回答ではありませんm(_ _)m。
Gigazine: https://gigazine.net/news/20211108-m1-macbook-pro-memory-leak/ で状況が分かります。
メモリを大量消費するアプリを終了させることで一時的な回避が可能のようです(2021年11月8日時点)。
また、macOS Monterey 12.0.1ではIntel Mac、M1両方でアプリケーションメモリエラーが発生する問題があるようです。
9to5mac: https://9to5mac.com/2021/11/02/application-memory-error-affecting-many-mac-apps-intel-as-well-as-m1/
↓の記事は、これら問題の回答ではありませんm(_ _)m。
メモリ16GB、クワッドコアのMacBook Pro Retina Mid2015をメイン利用しています。以前はMacBook Pro Retina Late2012(メモリ8GB)をメイン利用していました。メモリ8GBから16GB、2倍に増えたのでParallelsで動かすWindows10Proも4GBのメモリを割り当てています。快適です。最近メモリ不足になることが多くなってきました。慣れって怖い(笑)
OS X Mavericksからメモリ圧縮機能が追加されているのでもはやメモリ不足なんて過去のものって思っていました。Mid2015はSierra、Late2012はHigh Sierraで使っています。アクティビティモニタのメモリを見るとメモリ圧縮列がありますね。どちらもメモリ圧縮機能がしっかり動作しています。
スクショは撮れなかったんですが、その時のアクティビティモニタの項目をコピペしてGoogleスプレッドシートに保存できたので、この時のデータを使っています。
アクティビティモニタに一覧表示しているデータは、Commandキー+Aで全選択できます。Commandキー+CでコピーしてGoogleスプレッドシートにコピーできます。ピポッドもできるので最近は、エクセル立ち上げなくてもよくなっていますね。参考までにこんな感じにまとめています。
A列とB列は、それぞれ計算で算出しています。
A列は、各プロセスのメモリ使用量をMBに統一しています。
A列の計算式 =E2*IFS(F2="GB",1000,F2="MB",1, F2="KB",0.001,F2="バイト",0.000001)
B列は、各プロセスのメモリ圧縮量をMBに統一しています
B列の計算式 =G2*IFS(H2="GB",1000,H2="MB",1, H2="KB",0.001,H2="バイト",0.000001)
C列はプロセス名からカテゴライズしています。手打ちです。
この時動いていたアプリ、プロセスなどの総数は、415でした。
メモリ使用量の総計は、17.24GBで、メモリ圧縮された総計は、8.25GBでした。合計で25.5GBほどあるってことですね。
メモリ使用量の内訳を分析して見ます。415個をカテゴリに分けています。
カテゴライズの規則は以下の通りです。
・登場回数の多いアプリ(Safari、Chrome、VS Code)、Finder、Keynote(無応答になっていた)、メモリ使用量が多いWIndows10Proの仮想アプリ関係としています。
・自分で終了できるアプリは、「アプリ」にまとめています。
・自分で終了させることができない、サービスとして自動的に起動されるkernel_taskやmd_stores、WindowServerなどは「システム」にまとめています。
16GBでメモリ不足になった時のメモリ使用率グラフ
メモリ使用率No1は、システム関連です。No2は、仮想アプリ、No3,4は、Safari、Chromeと続いていることがわかります。
16GBでメモリ不足になった時のメモリ圧縮の使用率グラフ
メモリ+メモリ圧縮の使用率グラフ
ここまで実際にメモリ不足に陥った時のアクティビティモニタの数値を細かく分析した情報を掲載してきました。
多分これがいけないんだろうと思われるmacのメモリに優しくない使い方を3つご紹介しています。
kernel_task(1.66GB)がもっともメモリを多く使っています。その次がWindowServer(408MB)と続きます。でも大多数は数十MBです。実はシステム関連で動作するサービスは本当に数が多く、全プロセス415件の8割を超える349プロセス動作しています。1つ一つは小さくても数が多いのでメモリ消費No1に輝いています。
ChromeもSafariも同時に使う必要があるの?って疑問かもしれませんが、分けて使っています。それぞれ新しいウィンドウを立ち上げたり、タブも十数個開いていたりします。
今回の分析で、Chromeが使っていたメモリは、2.89GB。Safariが使っていたメモリは4.88GBでした。確かにSafariの方が多くタブを開いていましたね。
=>ウェブページは1つのタブで1GB程度メモリを消費することがあります。
ブラウザで開いている1つのサイト、実は大量にメモリを使うアプリ並です。
あとで見るなら、ブックマーク、リマインダーなどにURLを記憶しておいて、閉じた方がメモリに優しいです。
ウィンドウを閉じても、アプリ自体が終了しないことがあります。これはMacOS特有の機能です。
それほどメモリは利用していないので、気がついたら終了させるようにしています。
Dockを確認して、アイコンの下に●があったら、アプリは待機状態で動作中です。
メモリ不足に陥ってすぐにアクティビティモニタを確認しました。この時最も多くメモリを使っていたのはFinderでした。Finderを強制終了させています。Windows10を超えるメモリ使用量だったことは覚えているんですが、スクショも撮れていないので裏付けがないですね。先にご紹介したデータは、Finderを再起動した後のデータです。それでも954MBのメモリを消費していますね。使い続けるとどうなるのかを比較対象としてご紹介します。
10日間再起動していないFinderのメモリ消費量は、メモリ2.98GB、メモリ圧縮2.85GBです。
Finderはメモリとメモリ圧縮を合計すると5.93GB!消費しています、Windows10は3.94GBです。
Finderは、裏で何かをやっているのか、特に何もしていない状況でもメモリの消費が増えたり、減ったりします。
ほぼそのままの状況で10分後のアクティビティモニタを確認するとFinderのメモリ消費は1.44GB、メモリ圧縮1.06GBに減っていることが確認できます。
このようにFinderはメモリを大量に消費することがあります。Finderの内部処理が終了すると使ったメモリを綺麗に掃除していることも確認できました。
=>メモリ消費をクリアする(*1)ためのFinder強制終了はおすすめできない。
Finder内部で必要な処理をしている可能性があります。
*1:Finderが無応答になった、macが何かおかしい場合の問題の切り分けする、Finderの表示が何か変、等の問題が発生したら試したいです。
Finderが使える最大メモリ量を指定できると嬉しいですよね。そんなことできるのか?今の所そういった情報が見つかっていません。ご存知の方いらしたら情報いただけると嬉しいです。
Finderは2、3枚ウィンドウで開いてもメモリ消費に変化はありませんでした。ただ10枚、20枚とFInderで新しいウィンドウを開いてみたところ、激しいメモリ消費に襲われ、レインボーカーソル出まくりでした。
9,10枚目あたりで新しいウィンドウを開く操作する際にレインボーカーソルが出始めました。なんとか20枚Finderで開いてみました。
メモリの消費も激しいです。Windows10Proを超えました!メモリ4.85GBをマークしています。
=>Finderは新規Finderウィンドウで複数毎のウィンドウを表示できます。大量にメモリを消費します。
普段こんなに開くことはないので、Finderはウィンドウをたくさん開いてもメモリ消費は変わらないと思い込んでいました。ミッションコントロールでデスクトップを複数作ることができますよね。 デスクトップ毎にFinderを開いていたんですがメモリに優しくないことがわかりました。解決策の1つとして、1つのFinderを複数のデスクトップで使い回す設定変更を行っています。
1つのFinderウィンドウを複数のデスクトップで表示させる設定はDockのFinder(二本指タップ or 右クリック)から指定できます。
オプション>割り当て先では 「すべてのデスクトップ」 、「このデスクトップ」、「なし」を設定可能なことがわかります。
初期設定の「なし」から「すべてのデスクトップ」に変更することで別デスクトップでも同じ場所にFinderが表示することができます。
ここまで16GBでもメモリ不足になった事例をご紹介してきました。
ブラウザのタブや別ウィンドウをたくさん開かないだけでも使用メモリを削減することができます。
仮想アプリ、動画編集アプリなどメモリを大量に必要とするアプリを使わない場合、16GBはちょうど良い選択だと思います。
仮想アプリ、動画編集アプリを利用する予定ならメモリはあればあるほど安定すると思います。
A列の計算式 =E2*IFS(F2="GB",1000,F2="MB",1, F2="KB",0.001,F2="バイト",0.000001)
B列は、各プロセスのメモリ圧縮量をMBに統一しています
B列の計算式 =G2*IFS(H2="GB",1000,H2="MB",1, H2="KB",0.001,H2="バイト",0.000001)
C列はプロセス名からカテゴライズしています。手打ちです。
16GBをがっつり使ったメモリ不足をご紹介
この時動いていたアプリ、プロセスなどの総数は、415でした。
メモリ使用量の総計は、17.24GBで、メモリ圧縮された総計は、8.25GBでした。合計で25.5GBほどあるってことですね。
メモリ使用量の内訳を分析して見ます。415個をカテゴリに分けています。
カテゴライズの規則は以下の通りです。
・登場回数の多いアプリ(Safari、Chrome、VS Code)、Finder、Keynote(無応答になっていた)、メモリ使用量が多いWIndows10Proの仮想アプリ関係としています。
・自分で終了できるアプリは、「アプリ」にまとめています。
・自分で終了させることができない、サービスとして自動的に起動されるkernel_taskやmd_stores、WindowServerなどは「システム」にまとめています。
16GBでメモリ不足になった時のメモリ使用率グラフ
メモリ使用率No1は、システム関連です。No2は、仮想アプリ、No3,4は、Safari、Chromeと続いていることがわかります。
16GBでメモリ不足になった時のメモリ圧縮の使用率グラフ
メモリ+メモリ圧縮の使用率グラフ
ここまで実際にメモリ不足に陥った時のアクティビティモニタの数値を細かく分析した情報を掲載してきました。
メモリに優しくない使い方3選
多分これがいけないんだろうと思われるmacのメモリに優しくない使い方を3つご紹介しています。
1)不要なサービスは見直した方がいい
kernel_task(1.66GB)がもっともメモリを多く使っています。その次がWindowServer(408MB)と続きます。でも大多数は数十MBです。実はシステム関連で動作するサービスは本当に数が多く、全プロセス415件の8割を超える349プロセス動作しています。1つ一つは小さくても数が多いのでメモリ消費No1に輝いています。
2)事実、ブラウザはメモリをたくさん使う。
ChromeもSafariも同時に使う必要があるの?って疑問かもしれませんが、分けて使っています。それぞれ新しいウィンドウを立ち上げたり、タブも十数個開いていたりします。
今回の分析で、Chromeが使っていたメモリは、2.89GB。Safariが使っていたメモリは4.88GBでした。確かにSafariの方が多くタブを開いていましたね。
=>ウェブページは1つのタブで1GB程度メモリを消費することがあります。
ブラウザで開いている1つのサイト、実は大量にメモリを使うアプリ並です。
あとで見るなら、ブックマーク、リマインダーなどにURLを記憶しておいて、閉じた方がメモリに優しいです。
3)使い終わったらアプリは速やかにCommand+Qで終了させる
ウィンドウを閉じても、アプリ自体が終了しないことがあります。これはMacOS特有の機能です。
それほどメモリは利用していないので、気がついたら終了させるようにしています。
Dockを確認して、アイコンの下に●があったら、アプリは待機状態で動作中です。
Finderってメモリ使いすぎじゃないですか?
メモリ不足に陥ってすぐにアクティビティモニタを確認しました。この時最も多くメモリを使っていたのはFinderでした。Finderを強制終了させています。Windows10を超えるメモリ使用量だったことは覚えているんですが、スクショも撮れていないので裏付けがないですね。先にご紹介したデータは、Finderを再起動した後のデータです。それでも954MBのメモリを消費していますね。使い続けるとどうなるのかを比較対象としてご紹介します。
10日間再起動していないFinderのメモリ消費量は、メモリ2.98GB、メモリ圧縮2.85GBです。
Finderはメモリとメモリ圧縮を合計すると5.93GB!消費しています、Windows10は3.94GBです。
Finderは、裏で何かをやっているのか、特に何もしていない状況でもメモリの消費が増えたり、減ったりします。
ほぼそのままの状況で10分後のアクティビティモニタを確認するとFinderのメモリ消費は1.44GB、メモリ圧縮1.06GBに減っていることが確認できます。
このようにFinderはメモリを大量に消費することがあります。Finderの内部処理が終了すると使ったメモリを綺麗に掃除していることも確認できました。
=>メモリ消費をクリアする(*1)ためのFinder強制終了はおすすめできない。
Finder内部で必要な処理をしている可能性があります。
*1:Finderが無応答になった、macが何かおかしい場合の問題の切り分けする、Finderの表示が何か変、等の問題が発生したら試したいです。
Finderが使える最大メモリ量を指定できると嬉しいですよね。そんなことできるのか?今の所そういった情報が見つかっていません。ご存知の方いらしたら情報いただけると嬉しいです。
Finderは2、3枚ウィンドウで開いてもメモリ消費に変化はありませんでした。ただ10枚、20枚とFInderで新しいウィンドウを開いてみたところ、激しいメモリ消費に襲われ、レインボーカーソル出まくりでした。
9,10枚目あたりで新しいウィンドウを開く操作する際にレインボーカーソルが出始めました。なんとか20枚Finderで開いてみました。
メモリの消費も激しいです。Windows10Proを超えました!メモリ4.85GBをマークしています。
=>Finderは新規Finderウィンドウで複数毎のウィンドウを表示できます。大量にメモリを消費します。
普段こんなに開くことはないので、Finderはウィンドウをたくさん開いてもメモリ消費は変わらないと思い込んでいました。ミッションコントロールでデスクトップを複数作ることができますよね。 デスクトップ毎にFinderを開いていたんですがメモリに優しくないことがわかりました。解決策の1つとして、1つのFinderを複数のデスクトップで使い回す設定変更を行っています。
1つのFinderウィンドウを複数のデスクトップで表示させる設定はDockのFinder(二本指タップ or 右クリック)から指定できます。
オプション>割り当て先では 「すべてのデスクトップ」 、「このデスクトップ」、「なし」を設定可能なことがわかります。
初期設定の「なし」から「すべてのデスクトップ」に変更することで別デスクトップでも同じ場所にFinderが表示することができます。
まとめ
ここまで16GBでもメモリ不足になった事例をご紹介してきました。
ブラウザのタブや別ウィンドウをたくさん開かないだけでも使用メモリを削減することができます。
仮想アプリ、動画編集アプリなどメモリを大量に必要とするアプリを使わない場合、16GBはちょうど良い選択だと思います。
仮想アプリ、動画編集アプリを利用する予定ならメモリはあればあるほど安定すると思います。
コメントシステムを利用したくない方は お問い合わせ からお願いします。
2013.8.19 DISQUS(外部コメントサービス)の利用を開始しました。
Facebook, google, Twitter等のアカウントで投稿可能です。