このキーワードは、プロセッサごとのデフォルトのキャッシュ量を、8バイト単位のワード数で指定します。この値は、さまざまなキャッシュブロッキングアルゴリズムで使用されます。
この値を適切に設定することで、利用可能なキャッシュにバッチサイズを合わせ、関連するアルゴリズムの効率を最大化します。

通常、このキーワードは Default.Route ファイルで使用します。現在のシステムにインストールされているGaussianのデフォルト値を確認するには、 testrt ユーティリティを使用します。LinuxやほとんどのUNIXベースのシステムでは、このパラメータの最適な値を確認するためには、 cachesize スクリプトを使用してください(下の実例を参照してください)。

Gaussianバイナリを作成する際、この値はさまざまなCPUタイプに対して正しく設定されています。 ただし、その後にリリースされたCPUで異なるキャッシュサイズやコア間キャッシュ共有方式を使用する場合、この値を変更する必要があるかもしれません。 Gaussianをソースコードからビルドする場合、この値はコンパイルそ実行しているシステムのハードウェア構成に基づいて決定されます。

以下の testrt コマンドの出力は、Gaussianバイナリーで用いられる値を一覧表示しています:

$ testrt sp

Revision:  EM64M-G16RevA.02  9-Aug-2016 NErtGn=1000 NextEG=955 MaxAtm=250000 MDCach=131072

Remainder of testrt output …

この131,072という値は、128Kの作業精度ワード、つまり1MBに相当します。コマンドを実行したmacOSシステムには、6MBのレベル3キャッシュを持つクアッドコア64ビットIntelプロセッサが搭載されています。利用可能なキャッシュの50%を使用するのが妥当であると考えられるため、コアあたり0.75MB(1.5MBの50%)が適切な値となります。つまり CacheSize=98304 とします(値は8バイトワード単位)。

また、Linuxシステムではキャッシュのサイズは /proc/cpuinfo に記述されています。以下の $g16root/g16/bsd サブディレクトリーにある cachesize を実行すると全キャッシュサイズは以下のように表示されます:

$ $g16root/g16/bsd/cachesize

524288  bytes

これから、この古いデュアルコアシステムには512KBのキャッシュがあることを示しています。この場合、コンピューターが古いため、プロセッサごとのキャッシュサイズが報告されています。
このスクリプトにパラメータを与えると、使用する CacheSize キーワードが表示されます:

$ $g16root/g16/bsd/cachesize 1
                
CacheSize=32768

この例では、コアごとに0.25 MBのキャッシュが使用されます。