« 菜箸 | トップページ | メーデー »

2009年4月30日 (木曜日)

プログラムの無駄処理をスキップ

いま開発中のプログラム、とりあえず動作チェックの意味もあるので、ありうる処理をすべて行わせるようにしていたら、
(1)MASATERでのデブリflux計算に5分。
(2)結果の集計にMATLABで5分。
かかりました。(Linux/Sempron/1.8GHz)
これは、シミュレーションの開始時に一回だけ行う処理で、シミュレーション中に使う大きなデータ表を生成するものです。
前回のミーティングで、この所要時間を報告したら、溜息をつかれてしまいました。

これでも、Cでループ処理するより速くなったところですが、今日はこれを改良し、MASTERの計算条件が前回と同じで、結果ファイルが残っているなら、再計算しないようにしました。前回と同じかどうかの判定に、ちょっとトリックを使い、簡単なアルゴリズムでできました。

最終的なシミュレーション用途では、MASTERに与える軌道要素が一定で、それ以外のパラメータを変えつつ様々にシミュレーションするだろうから、再計算は滅多に必要じゃないでしょう。それなら2回目からは所要時間ほぼゼロ。抜本的な時間短縮が期待できます。good

|

« 菜箸 | トップページ | メーデー »

パソコン・インターネット」カテゴリの記事

航空・宇宙・天文」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/23831/44852062

この記事へのトラックバック一覧です: プログラムの無駄処理をスキップ:

« 菜箸 | トップページ | メーデー »