4章 多体問題シミュレーション

純粋Pythonでの実行時間

<結果>

 n=50000

 27.69sec

 n=500000(本と同じ)

 6m0.809sec

nbody.pyをpyx拡張子に変更し、setup.pyで拡張モジュールにしたあと

run_nbody.pyから呼び出しするように変更したあと再度計測

<結果>

 n=50000

 22.461sec

1.3倍の向上となり本のように2.8倍にはならなかったが時間短縮にはなっている。

 n=500000

 2m25sec

こちらは2.5倍の効果があった。

 C構造体、advance関数の書き換え

<結果(基準:純粋Python)>

 n=50000

 0.408sec

67倍の効果

 

 n=500000

 1.857sec

 

 190倍の効果(計算結果は同じなので間違ってはいないと思う)