マニュアル

Q&A よくある質問とその回答

ベクトル計算機 (NEC SX6) に関する質問

Q-1 Fortranプログラムのコンパイル時のループカウントについて
A-1コンパイル時には動的にループ長を拡張するオプション -Wf" -pvctl vwork=stack" がデフォルトで付加されており動的にスタック上にワーク領域を拡張するという処理(オーバーヘッド)が加わり、静的にループ長を指定した場合に比べ、最大で10%程度パフォーマンスが劣化します。もし、静的にループ長を設定したい場合は、以下のようにloopcntを指定する必要があります。 -Wf" -pvctl vwork=static" を指定して、vwork=stack のオプションを打ち消します。
例)ループカウントを20000に設定する場合
sxf90(or f90) -Wf" -pvctl vwork=static loopcnt=20000" -o ./a.out xxxxxx.f