DO ループの折り畳みは,I/O 処理の大きなオーバーヘッドを軽減します。通常は,I/O 並び中の個々の要素が,Compaq Fortran RTL への呼び出しを個別に生成します。これら呼び出し処理のオーバーヘッドは,DO 形反復で最も大きくなります。
Compaq Fortran は,7 つまでの入れ子にされた DO 形反復を,最適化された実行時ライブラリー I/O ルーチンへの 1 回の呼び出しに置き換えることで,DO 形反復中での呼び出し回数を減らします。このルーチンは多数の I/O 要素を一度に転送することができます。
ループの折り畳みは,書式付き I/O と書式なし I/O のどちらでも可能ですが,いくつかの条件が満たされている必要があります。
制御変数は整数でなくてはなりません。制御変数は,仮引数であったり,EQUIVALENCE または VOLATILE 文に含まれていてはなりません。Compaq Fortran は,制御変数が実行時に予期しない形で変更されないことを判断できなくてはなりません。
書式は可変書式を含んでいてはなりません。
関連情報
VOLATILE 属性および文を参照してください。
ループの最適化については,「最適化レベル:/optimize:num オプション」を参照してください。