4. タイルキャッシュの設定方法

データの処理や絵の操作をすすめるにつれ、 GIMP はより多くのメモリーが必要になってゆきます。 多く使えるに越したことはありません。 GIMP はオペレーティングシステムが利用を許したメモリー資源を可能な限り効果的に使いつつ、 使う人にとっての快適さと画像処理の速さを維持するよう努めています。 処理される内部データはその間、 記憶装置上でブロック状の画像データに分割管理されます。 これらの置かれる場所は遅い固定記憶装置や速い主 RAM のいずれかもしくは両方の 2 つの異なるデータ記憶形態です。 GIMPRAM を好んで使おうとしますが、 そのメモリー容量が足りなくなると残りのデータはハードディスク上に置かれます。 こういった画像データの固まりを参照するとき通常はこれらをタイルと呼び、 その全体的な機構のことをタイルキャッシュといいます。

タイルキャッシュ値を低くすると GIMP は、 RAM に空きがあっても全く使おうとせず、 データをいきなりディスクに送るので、 さして意味もなくディスクをはたらかせてしまいます。 タイルキャッシュ値が高すぎると、 他のアプリケーションが使う分のシステムの資源が欠乏してスワップ現象が起きだし、 やはりディスクばかりに負担をかける結果になります。 しかもこういうときは RAM が不足しているので不意に終了するものや異常をきたしはじめるものさえ出てくるかもしれません。

それではタイルキャッシュの大きさはどの位が適当でしょうか。 ちょうど良い値を見付けるためのコツやちょっとした技をここに紹介します。

最後の提案にあったちょうど良い値が気になると思います。 これを得るには、 まずはじめにお使いのコンピューターについていくつかのデータを用意せねばなりません。 システムに搭載されている RAM の容量、 オペレーティングシステムのスワップスペースの利用可能な容量を調べることはもちろん、 さらにはオペレーティングシステムのスワップスペースがあるディスクや GIMP のスワップスペースがあるディスクの読み書き速度についてもおおよその目安をつけてください。 ディスクの検査をするとか回転速度 (RPM) を確かめるという意味ではありません。 複数台あるときにどちらかが明らかに速かったりもしくはほとんど同じだったりするので、 そういったことを知っておけば十分です。 GIMP のスワップ用フォルダーを置くディレクトリーについては、 設定 ダイアログのフォルダーのページの スワップ用フォルダー で変更できます。

つぎに、 GIMP と同時に稼動させたい他のアプリケーションが使う資源量を見積らなくてはなりません。 この測定ではそのとき使いたい GIMP 以外のアプリケーションを全部起動して使用量を調べます。 測定に使うアプリケーションはお使いの OS などの使用環境によって異なりますが、 たとえば topfree コマンドが利用できます。 見てほしいのは残りメモリー容量と、 ファイルキャッシュ残量です。 最近の UNIX 系システムなら未使用メモリーをできるだけ小さくして大きなファイルやバッファーキャッシュを保持しようとしているはずです。 Linux™ の free コマンドの出力では、 free と書かれた列の -/+ buffers/cache と書かれた行を見てください。 スワップ残量も読み取りましょう。

あとはいよいよ決断ですがちょっとだけ簡単な計算が必要です。 決断で肝心な点は、 すべてのタイルキャッシュを RAM にたよるか、 RAM だけでなく一部をオペレーティングシステムのスワップ領域にも依存するのかどうかということで、 これで考え方も変わります。

  1. GIMP と他のアプリケーションと頻繁に切り替えながら作業されていますか? それともずっと長時間専ら GIMP だけで作業されているのでしょうか? GIMP と長く過ごす方は RAM とスワップの両方に空き容量があるか確かめてください。 ほとんど残っていない場合は 2. に進みましょう。 (よくわからない方も 2. に進みましょう。) 一方、 細切れにアプリケーションを切り替えながら使う方は RAM の空き容量だけを読み取ってから 4. に進んでください。 他の値を調べる必要はありません。

  2. オペレーティングシステムのスワップ領域が置かれているのと同じディスク内に GIMP のスワップ用フォルダーを置いていますか? 同じであれば RAM とシステムのスワップを増やすとよいでしょう。 ディスクが別の方は 3. に進んでください。

  3. OS のスワップ領域があるディスクの速さは GIMP のスワップ用フォルダーがあるディスクと同等もしくはそれ以上でしょうか? 逆に遅いものであるなら RAM の空き容量だけが問題です。 同等もしくはそれ以上の速いディスクだったら、 そのシステム用スワップと RAM の空き容量の両方を増やすとよいでしょう。

  4. RAM の空き容量だけ、 もしくは RAM の空き容量と OS のスワップの残量の和の数値が判りましたでしょうか。 この値を、 万全を期すため少し小さくしてからタイルキャッシュの設定値にしてみるのが良策でしょう。

もうお觧りになったと思いますが、 すべては記憶資源の残量の確認と、 いかに OS のスワップを有効活用するかにかかっており、 さもなくば手をつけられないほどの問題を抱えるおそれがあります。

もちろんタイルキャッシュの設定には他のきっかけもあります。 まず基本的なところではコンピューターの使用状況が変化するとか、 ハードウェア自体を変更したという場合です。 そういうときには[今までの]コンピューターの使い方や処理速度についての勘はもはやあてになりません。 やはり先に述べた決断への過程を通して適当な値を見極める必要があります。 その値は以前のものとほとんど変わらないかも知れませんし、 全然違う値が出てくるかもしれません。

タイルキャッシュの値を変えるもうひとつの理由はどうも GIMP の動きが鈍くて他のアプリケーションと比べると遅いように感じられる場合です。 考えられるのは他のアプリケーションの邪魔をするほどではなくとももう少し多く GIMP にメモリーを与えてもよいかもしれないということです。 逆に他のアプリケーションがメモリー不足を訴える場合には、 あまり GIMP が食べ過ぎないよう調節するといいかもしれません。

RAM だけ使うと判断していて GIMP の動作が遅い場合は、 設定値を少しだけ増やしてみましょう。 ただしスワップの残りも全部使ってしまわないようにしてください。 その逆の場合、 つまり RAM とシステムスワップの両方を使っていて記憶資源不足が問題になっているときは、 GIMP が使える RAM の分量を減らしたほうがよいでしょう。

このほかには手持ちの一番速いディスクや、 普段使っているファイルを収めるディスクとは別のディスクにスワップ用フォルダーを置く技があります。 通常はオペレーティングシステムが管理するスワップ領域を複数のディスクに分散して置くのも良策といえます。 言わずもがなではありますが RAM をもっと容量の大きなものに買い替えるか増設する手がありますし、 同時にあまりたくさんのプログラムを走らせ過ぎないようにするのも方法です。 そもそも[搭載メモリー] 16MB のコンピューターでポスター大の画像を編集できるわけがありませんし、 きびきびとした操作は無理というものです。

画像を開いたらそれが消費するメモリー量も見てみてはどうでしょうか。 画像は大きいものほど、 また操作履歴が長くなればなるほど、 資源の消費量も増えていきます。 ここで得られる数値を参考にするのもひとつの方法ではあります。 ただし扱う画像の大きさがほとんど同じで、 消費される実際のメモリー量も変化しないことが条件です。 そのほかこの消費量を参考にすれば必要な RAM 容量やディスク容量の目安にもなるでしょう。