PixInsight
〜快適性向上のためのSwap設定〜

2024/4/14掲載

はじめに

PIの処理実行時の快適性を向上のため、Swapの設定調整で可能か試してみました。
ベンチマーク計測( やり方はこちら)で検証してみた結果と共にやり方を解説します。
最良設定では、処理速度が2.2倍になるという驚きの結果になりました。

2024/4/20追記:メインメモリに余裕があるなら、RamDiskを使った方がおススメです。検証結果をこちらに掲載しています。

Swapとは

パソコンは演算中に演算に必要な情報をメモリに一時保存しますが、メモリの容量を超える情報が来ると、その情報を別の場所へ移します。
Swapとは、メモリの容量を超えて一時保存する動作のことで、そのための場所をSwap領域と言います。
PIではSwap領域を任意に設定することができます。

Swapの設定方法

まず、Swapの設定方法を説明します。

1.Swap用フォルダを作成する

fig1

任意の場所に、Swap領域とするフォルダを作成して下さい。
例えば、自分のドキュメントフォルダの中に「PixInsight」というフォルダを作り、その中に「swap1」というフォルダを作る形です。
Swap領域は複数設定できます。 何個設定するのが良いか?については、 後述しますので、一先ずフォルダを1個作ってみて下さい。

swap領域はできるだけ高速に読み書きできるストレージ(SSDなど)が望ましく、現在であればNVMe接続が最適です。
ご自身のPCに複数のストレージを取り付けている場合は、その中で最も高速なストレージを選択しましょう。
私の場合は、CドライブがNVMe接続のSSDですので、C:\以下に作ることにしました。


2.PIの設定を起動

fig2

PIを起動し、メニューバーの①「EDIT」→②「Global Preferences」をクリックします。


fig3

Preferences(環境設定)画面が開きます。
左のリストより、③「Directories and Network」をクリックします。
右のウィンドウが「Directories and Network」に変わるので、④「Add」をクリックします。


fig4

フォルダ選択のダイアログが開きますので、上記手順で作成したSwap領域用のフォルダを選択します。 ⑤左のツリーより、対象のフォルダを作成したパスを選び、右のウィンドウで⑥作成したフォルダをクリックします。
対象のフォルダがハイライト(⑥)されたのを確認した上で、⑦「フォルダーの選択」をクリックします。


fig5

Preferencesのウィンドウで、⑧選択したフォルダがSwap Storage directoriesに入力されたことを確認した上で、⑨●をクリックします。

以上で設定は終了です。
Preferencesウィンドウは右上の「×」をクリックして閉じて下さい。


Swap領域をいくつ設定するのが良いのか?

PIではSwap領域を複数作ることができます。
そこで、どこにどれだけ作るのが良いのかを検証してみました。

fig6

同じCドライブにSwap領域を1個、2個、5個作った場合で、ベンチマークを取得した結果です。 Swap領域の設定を変更したのみですので、CPU Performanceは変化ありませんが、SwapPerformanceはSwap領域数の増加に連れて増えており、Total Performanceも向上しています。

この結果から、Swap領域数を増やすとSwap領域の読み/書き速度が向上しSwap Performanceが向上するようです。
設定数を増やしていくとどこかで頭打ちすると推測し、どの程度の設定数が良いか検証してみました。


fig7

CドライブにSwap領域を順に増やしていき、70個まで作ってみました。
(70個を超えて、環境設定画面でSwap領域を設定しようとするとエラーは出なかったのですが、一覧に表示されなかったのでやめました。裏では設定できている形跡がありましたがやめました)

この結果を見ると、Swap性能指数はSwap領域数を増やす程、増える結果になりました。しかし、CPUの性能指数が低下していくことで、Totalの性能指数が低下していくことがわかりました。
この結果では、Swap領域数は、『50個程度が最適』と言えます。

ただ、Swap性能指数はあがっているので、ここであきらめるのは悔しい。


fig8

同じドライブに並列に書込み処理するとCPUの処理能力を使うのかもしれません。そこで、Swap領域を別ドライブに分けてみることにしました。
私のPCにはもう一台SSDをFドライブとして搭載しています。ただ、そちらはSATAで読み書き速度がCドライブより遅いためSwap性能指数は下がってしまうかもしれませんが、検証してみました。

CrystalDiskMark8で調べた結果では、読み書き速度はかなり違います。


fig9

検証では、CドライブとFドライブそれぞれのSwap領域数を同じにし、それぞれ1個、2個、5個、10個、20個の条件で実施しました。合計の領域数は、この倍の値です。

○のプロットに実線がCドライブのみ、△のプロットに破線がCとFドライブをそれぞれ同じ領域数設定した結果です。
Swap性能指数は、Fドライブを並列使用する方が下がりましたが、Swap領域数を増やした時のCPU性能指数の低下はFドライブを並列しようする方が少なく、合計10個を超えるとCPU性能指数が逆転し、Total性能指数は合計20個を超えると逆転する結果となりました。

この結果より、Swap領域数を増やす場合は、読み書き速度が多少低くても複数ドライブを設定する方がTotal性能指数が良くなると言えそうです。


fig10

そこで、当方の環境でTotal Performanceが最高となる条件を探ってみました。
Swap領域数は70個に固定して、CドライブとFドライブの割合を変更してみたところ、Cドライブが40個、Fドライブが30個がバランス良さそうでTotal Performanceが最高値となりました。


fig10

初期設定との比較をわかりやすいよう棒グラフにしてみました。
Swap Perfoemanceが7.4倍になり、CPU Performanceが若干低下したものの、Performanceが2.2倍になるという大幅な性能アップが図れました。


チャンピオンデータ

fig11

上記の検証時のベンチマーク画像を残し忘れたので、その後ベンチマークを繰返し、Total Performanceが最高値となった結果を掲載しておきます。
Swapのtransfer rateは、4681.507MiB/sでした。



to astro_Tips

to HOME