私は、MATLAB 2009bで書かれたコードを持つ医学研究者です。自己参照ループ(ここではプログラミング用語ではありません)のために非常に遅く実行されます。つまり、最初の反復の結果は(私はプロファイラを実行しました)MATLABコードをFortranに変換する
私はコードの遅い部分をmex関数に変換したいと思います。私は1970年代初めにFortranを学んだが、以来それを使用していない。私が変換する必要があるコードは何も気にしません、それはちょうど長い数値計算です。
私の質問は、この目的にふさわしいFortranの最も簡単なバージョンとは何でしょうか。これに対して、どのコンパイラがIntel Macで最もうまくいくのでしょうか?たとえば、MATLABの構文をFortran 90と比較した情報が見つかりました。この変換はあまりにも厄介なようには見えませんでした。しかし、私はプログラマーではありません。
OS 10.6のMacBook Proを使用しています。
ありがとうございました。
どのように皮肉。 Matlabは部分的に「より良い」FORTRANとして開発されました。 – Marc
コードは投稿するのに十分小さいですか? MEXに頼る前に、まだ他の最適化があるかもしれません。例えば。事前割り当てや関数呼び出しに注意することで、新しいMatlabsでインプレース配列の変更を行うことができます。これは反復計算の大きな成果です。 –
この暖かい議論が彼を恐れていないことを望みます:) – Amro