コンパイル時の変数の初期化があると、プログラムを実行時の初期化よりも高速に実行できることは、メモリを動的に割り当てる必要があるためです。初期オーバーヘッドを超えたランタイム割り当ての影響
質問:ダイナミックに割り当てられたメモリは、最初の割り当てオーバーヘッドを超えてプログラムのパフォーマンスに長期的な影響を及ぼしますか?ダイナミックメモリにアクセスする方がコストがかかりますか?私の質問は特にFortranについてですが、おそらくCなどにも関係します。
したがって、一連の配列のサイズを初期化して計算を開始する初期コマンドライン引数があると、プログラムをその引数を定数パラメータとして設定し、異なるサイズの配列で計算するたびに再コンパイルするのと比較して、
「ダイナミックメモリにアクセスすることはそれほどコストがかかりませんか? _large_静的配列を考えてみましょう。各要素は1に初期化され、大きな動的配列は1に割り当てられます。小さいファイルはどれですか?大きな静的配列のサイズは、 'malloc()'や 'memcpy()'が実行するよりも_load_に時間がかかることがあります。例を投稿することをお勧めします。そうでなければ、これは単なる理論的なことです。 – chux