†Linuxなんて大キライ†

Seamonkeyメモ

作成開始日 2024.01.02
最終更新日 2024.01.28

Seamonkeyのメモリの肥大化−−2.53.xはメモリリーク版?

Seamonkey 2.53.12および2.53.18を使用していたところ、使用メモリが異常に増大する現象が確認された(いずれもLinux/64bit版)。起動時には160MB程度なのだが、一日終わってみれば3GB超、酷い時は4GB超にもなる。動作も重くなり、メニューバーから項目を選ぶだけでも2〜3秒掛かるようになった。

【追記】Windows/64bit版2.53.17.1@Win7でも同様な症状を確認

流石に正常な状態ではないので[about:memory|Show memory reoprts|Measure]でチェックしたところ、閉じたページのデータが「detached」のまま解放されずに累積されていた。メモリリークと考えて良いだろう。一応「about:memory」でGC/CC/Minimizeしてみたが、ほとんど効果がなかった。

ちなみにこの現象、JavaScriptを全オフにしておくと発生しない。が、流石にそれでは不便過ぎる。また、Seamonkeyをいったん終了して起動し直せばリセットされる。閉じる前のタブは簡単に復元できるので、実用的と言えないこともないが、煩わしいし、そもそも正常な動作ではない。

で、Seamonkey/FireFoxのメモリ肥大化に関する情報をネットで漁ったところ、以下のような情報が見つかった。

なお、about:configに関しては、以下のような設定変更をした。
image.mem.max_decoded_image_kb: 20000(kB)		20MB
image.mem.surfacecache.max_size_kb: 256000(kB)	256MB
image.cache.size: 256000(kB?)				256MB?

javascript.options.mem.max: 51200(kB)			50MB
javascript.options.mem.high_water_mark: 32(MB)	これだけMB?

browser.cache.memory.capacity: 0
browser.cache.memory.enable: false
browser.sessionhistory.max_total_viewers: 0
とまあ、いろいろ試してみたが、何れも「多少の効果」の域を出なかった。少なくとも、これらの対策を取っても、使用メモリはすぐに2GBをオーバーした。これでは解決にならない。それに、メモリ設定を下手に小さくすると、システム道連れでフリーズするので要注意。X落としてコマンドラインに抜けることすらできなくなったことがある。

仕方ないので、旧バージョンを試すことにした。私の記憶では、以前はこんなことは起きなかったはずなので…で、Seamonkey 2.49.5(Linux/64bit版)を試してみたところ、detachedページが居座る現象は発生せず、ページを閉じればその分メモリが解放されるという、正常な動作に戻った。

Seamonkeyは2.49.5を使用しろ!

と言う結論で良いのかなぁ…?なお、Seamonkey 2.49.5でもヒープは解放されなかった。GCも効果なし。したがって、ホーム以外の全てのタブを閉じても初期状態に戻るわけではない。が、その影響は数十MB程度で実用上は問題なさそうだ。今回はここまで。

Seamonkeyのインストール

@Seamonkeyのダウンロードページから圧縮ファイルをダウンロードする
A圧縮ファイル[seamonkey-2.49.5.tar.bz2]をダブルクリックで展開する
B展開したフォルダ[seamonkey]を[/usr/lib]に移動する
C[/usr/share/applications]に以下のようなファイル[seamonkey.desktop]を作成する
D[/usr/lib/seamonkey/seamonkey]のシンボリックリンクを[/usr/bin]に入れておくと便利
seamonkey.desktop
[Desktop Entry]
Name=Seamonkey
Comment=Browse the World Wide Web
GenericName=Web Browser
X-GNOME-FullName=Seamonkey Web Browser
Exec=/usr/lib/seamonkey/seamonkey %u
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=/usr/lib/seamonkey/chrome/icons/default/default48.png
Categories=Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/
vnd.mozilla.xul+xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;
image/png;x-scheme-handler/http;x-scheme-handler/https; (*)MimeType行は3行継続
StartupWMClass=Seamonkey
StartupNotify=true

NoScriptのバージョン

〜後述〜


【Linuxなんて大キライ目次】 【ホーム】