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容量やディスク容量の目安にもなるでしょう。