データ定義の最適化

パフォーマンスを最大化するためのデータ項目の適切な定義および配置について説明します。

プログラムのパフォーマンスは、データ項目のデータ型、サイズ、および配置の影響を受けます。適切なデータ型を使用すると効率が上がります。特に算術演算で効果的です。

COMP-5 または COMP-X の数値データ項目を使用します。可能な場合は、COMP-5 を使用します。

COMP-5 の使用は、プロセッサ ネイティブのバイト シーケンスで格納される値をバイナリで格納するために定義されています。算術演算に最適です。ただし、ファイルに格納するデータや、ネットワーク経由で他のマシンに送信するデータを COMP-5 型で定義すると、COMP-5 項目を別シーケンスに格納する環境では、プログラムがデータにアクセスできません。そのような環境では、かわりに COMP-X を使用してください。

マネージ コード プログラムでは、COBOL ソース内の定義に関係なく、一部の COBOL 数値フィールドが 32 ビットまたは 64 ビットのバイナリ フィールドに最適化されます。たとえば、DISPLAY または COMP-3 として定義されていて、グループに属していないフィールドは、バイナリ フィールドとして格納できます。コンパイラは、これらのフィールドの動作を最適化されていない場合と同じ動作にするために必要なコードを挿入します。

データ項目の処理速度は、データ項目の型によって異なります。

非整数データ項目の加算および減算は、データ項目が COMP-5 で、小数点の配置が加算と減算で同じ場合が最も速くなります。

同じ文で異なるデータ型を混合すると、同じデータ型を使用する場合よりも効率が悪くなります。ただし、COMP-5 および COMP-X については、併用してもパフォーマンスへの影響はほとんどありません。

ストレージ内で 1、2、4、8 バイトを使用する数値項目だけを使用します。

9 桁まで、またはバイナリ項目で 4 バイトまでの項目を演算する場合、最速で最小のコードが生成されます。

9 桁を超える、またはバイナリ項目で 4 バイトを超える数値項目を演算する場合、最も遅く大きいコードが生成されます。

一般に、偶数バイトの境界に項目を配置します。

COMP-5 の項目を個々のバイトにアクセスするように再定義しないでください。個々のバイトへアクセスする必要がある場合は、COMP-X を使用します。

編集項目は必要な場合にのみ使用します。