私のメインマシンはMacBookですが、最近ネットを閲覧していてもブログを書いていても、どうも動作が重いと感じることが多くなってきました。
そんな時には新MacBookが重いと思った時にチェックすることでも書きましたように、システムに負荷を与えているプロセスがいないかを確認することが有効です。
原因はThunderbirdだった
今回の場合もアクティビティモニタで確認してみたところ、メーラーのThunderbirdのCPU使用率が50〜60%を超えている時間が多く、これがシステムに負荷をかけている可能性が高いことがわかりました。
原因の目星がつけば、あとはそれを解消する方法を探るのみです。
ThunderbirdのCPU負荷を下げる方法
ThunderbirdでCPU負荷が高くなるというのは結構ポピュラーな問題のようで、ネットを検索するといくつかの対策が見つかりました。
以下対処を試した順番に書いていきます。
グローバル検索を止める
Thunderbirdにはグローバル検索という機能があります。言葉のイメージから世界中のネットを検索するような印象がありますが、実際にはフォルダやアカウントに関係なく全てのメッセージを検索する、という意味のようです。
これを実現するためにThunderbirdは全メッセージの索引データベースを作成しますが、そのメンテナンス作業がシステムに負荷を与える場合があるようです。
これを防ぐにはThunderbirdのオプションでグローバル検索機能を無効にします。Macの場合、メニューのThunderbird→環境設定で開くダイアログの「詳細」→「一般」タブにある「グローバル検索と索引データベースを有効にする」のチェックをOFFにします。
またこれにより、グローバル検索のための索引データベースファイルも不要になりますので削除します。うちのMacの場合、
- ユーザーフォルダ/ThunderBird/Profiles/????????.default/global-messages-db.sqlite
が該当ファイルでした。私は長年メールを貯めまくっていましたので、なんとこのファイルが3GB以上にも膨れ上がっていました。
ちなみにこのファイルは一旦削除しても、グローバル検索のオプションをONにしてThunderbirdを再起動すれば再構築されます(メール数が多い場合、時間がかかりますが)。
これでグローバル検索は無効になりましたが、残念ながらCPU負荷は若干下がった気はするものの依然高いままでした。
config.trim_on_minimizeオプションの設定
ネットを検索すると、config.trim_on_minimizeというユーザー設定を追加するという手法が見つかりました。
このオプションは元々はウィンドウを最小化した時にメモリを解放するという設定のようですが、CPU負荷の軽減にも効果があったという情報がありましたので、試してみました。
具体的な手順としては、上記のグローバル検索のケースでも使用したThunderbirdの環境設定ダイアログの「詳細」→「一般」タブで、「設定エディタ」のボタンを押します。
出てきた設定の一覧リスト上で右クリックによりポップアップメニューを出し、そこで「新規作成」→「真偽値」を選択します。
そこで設定名「config.trim_on_minimize」を入力し、続いて設定値として「true」を選択します。
こちらの設定も多少効果はあったような気もしますが、残念ながらうちの環境では根本的なCPU負荷の改善には至りませんでした。
GmailのIMAPフォルダ内メッセージ数を制限
上記2つがネットを検索して比較的よく出てくるCPU負荷の対処法でしたが、残念ながらうちの環境ではいずれも決定的な対策にはなりませんでした。
私の場合Gmailを使用していてほとんどメールを消さずにアーカイブしてきましたので、すでにGmailアカウント上に10万通以上のメールが貯まっています。どうもこの大量にメールが存在することが根本的な原因のような気がしてきました。
しかしここまで貯めてしまうと手動で消すのも簡単ではありません。そこでGmail側で何か対策がないかと探した結果、1つのオプションを見つけました。
それはThunderbirdでメール情報にアクセスするために使用しているIMAPインターフェース上で公開されるメール数を制限するというものです。
具体的にはGmailの設定画面にある「メール転送とPOP/IMAP」内の「フォルダ サイズの制限」を「IMAP フォルダ内のメッセージ数をこの件数に制限する」に設定します。件数はここでは最小の「1,000」にしました。
これによりThunderbird側では、各フォルダ内で最新の1,000個までしかメールが見えないということになります。
このオプションを設定した結果、うちの環境のThunderbirdのCPU負荷が常時高いという問題は解消されました。
当然Thunderbird上では1,000件より古いメールは見えなくなりますが、そのようなメールを見る機会はほとんどありませんので実用上の支障もほとんど出ていません。本当に古いメールを検索したい時などには、GmailのWeb画面から検索をかけたほうが早いでしょうしね。
というわけでThunderbirdが重い問題は何とか解決しました。MacBookはMacの中では比較的非力なマシンですので、こういう小まめなメンテナンスが使い勝手を大きく左右します。
うちの場合はThunderbirdでしたが、メール数が多いというのはメーラーが重くなる一般的な要因の1つと思われますので、他のメーラーでも重いというお悩みがある方は一度試してみてください。