自動配列および一時的な計算用に作成される配列を、スタックではなくヒープ上に割り当てます。
Windows: [Optimization (最適化)] > [Heap Arrays (ヒープ配列)]
Linux: なし
Mac OS X: [Optimization (最適化)] > [Heap Arrays (ヒープ配列)]
IA-32、インテル® 64 アーキテクチャー
Linux* および Mac OS* X: | -heap-arrays [size] -no-heap-arrays |
Windows: | /heap-arrays[:size] /heap-arrays- |
size |
配列のサイズをキロバイト (KB) 単位で表した整数値。コンパイル時に size よりも大きいと認識された配列は、スタックではなくヒープ上に割り当てられます。 |
-no-heap-arrays または /heap-arrays- |
コンパイラーは、自動配列および一時的な計算用に作成される配列を、スタックではなくヒープ上にある一時的な記憶域に割り当てます。 |
このオプションは、自動配列および一時的な計算用に作成される配列を、スタックではなくヒープ上に割り当てます。
size を省略して heap-arrays を指定すると、自動配列および一時配列はすべてヒープ上の割り当てられます。size を 10 とした場合、10 KB よりも大きな自動配列および一時配列はすべてヒープ上の割り当てられます。
なし
Fortran では、自動配列のサイズはランタイム式から取得されます。次に例を示します。
RECURSIVE SUBROUTINE F( N )
INTEGER :: N
REAL :: X ( N ) ! an automatic array
REAL :: Y ( 1000 ) ! an explicit-shape local array on the stack
上記の例の配列 X は、heap-array オプションの影響を受けますが、配列 Y は影響を受けません。
© 1996-2011 Intel Corporation. 無断での引用、転載を禁じます。