- ベストアンサー
今、開発言語をどれにしようか、迷っています。
マシンはデュアルコアのAthlon64 4800+は 決定しているのですが開発言語をどれにしようか、迷っています。 Windows: ASM, C, VB, Delphi, C++Builder, VC++, Java, VB2005, VC2005, C# ... Linux:GCCが良いよでしたら、Linuxにするかもしれません。 計算とグラフ表示が主な処理で、なかなかアルゴリズムが難しく、開発途中で試行錯誤しますので、開発のし易さも選ぶポイントです。 以下の優先順位です。 1番目:実行速度の早いもの(最適化など) 2番目:Profile機能がある(サードパーティでもよい) 3番目:ソースの記述量が少ない。(簡単) 4番目:書籍や情報が多い 5番目:汎用性が高い(今後のメンテナンスも考えて) 1番目の実行速度にこだわるのは、VB6でプログラムを書いて実行させたところ、昔BCCで書いていたプログラムより遅かったので驚愕しました。 簡単なのはよいのですが、速度が遅いのとプロファイル機能が手に入れなかったので、VisualBasicは断念しようと思います。 仕事とは直接関係ないのですが、今後の参考にしたいので、皆さまのご意見をお聞かせください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
No1回答者と大体同じ意見です。 プロファイル機能はVC++/VS2003/VS2005には有りますので最適化するには便利です(C++Builder/Delphiには見当らないようです)。 3番目:ソースの記述量が少ない。(簡単)の解決方法としてスクリプト言語のruby/pytonをフロントエンドで使用して、C/C++で作成したライブラリをリンクして使用する方法も有るでしょう。グラフ表示はデータファイルを作成してプロットプログラムを使用するなど。。 性能を出すのは、プログラムの作り方とコンパイラー性能なので、PGIコンパイラーなどの製品も検討する必要が有るかも知れません。 http://www.softek.co.jp/SPG/Pgi/TIPS/polyhedron.html http://www.softek.co.jp/SPG/Pgi/TIPS/athlon64x2.html (PS) インテルCPUならば、以下の製品が使えますので高速化が図れますが。。。残念。 インテルコンパイラ インテルVTuneパフォーマンス・アナライザー パフォーマンス・ライブラリ
その他の回答 (1)
- jacta
- ベストアンサー率26% (845/3158)
実行速度を最優先するのであれば、C/C++かFortranしか選択肢がないと思います。アセンブラは、コーディング技術が十分高くないと、かえって遅くなる可能性があります。 実際には、表示関係など、特に速度が要求されない部分はVisualBasicやC#などで書いておいて、計算部分だけC/C++で作るのがよいかもしれません。 グラフ表示もパフォーマンスが要求されるのであれば、すべてC/C++で記述した方がよいでしょう。 ちなみに、C++/CLIだとそんなに実行速度が期待できませんので、必ずネイティブコードを生成させるようにしてください。