Fortranの組み込み関数system_clock
を使用して、壁掛け時間を測定できます(並列計算に役立ちます)。私がhereとhereを読んだら、system_clock
とcpu_time
は、その機能が利用できない場合は、負の値を返します。または "基本的なシステムのタイマによって提供される範囲が不十分なためです。Fortranタイマーのラップアラウンドを克服するための対策
数週間にわたって実行されるシミュレーションでこの問題が発生していて、突然、負の値が報告されます。
私の質問は、これらの不十分な範囲/負の戻り値を回避または克服するためにどのような措置を講じることができますか?私はこの問題を克服するための最初の試みを示すだろうが、私はどこから始めるべきかも知らない。
少なくとも8ビットの整数を使用していますか? –
f2003の大きな整数引数がsystem_clockでサポートされているため。 – tim18
@VladimirF私は実際にはデフォルトのselected_int_kindを指定していないので、8ビット整数(デフォルト)が使用されていたと思います。この問題を解決するためには、大きな整数を使用するのが有効な解決法ですか? – Charlie