アカウント名:
パスワード:
実際に多くのプログラムでは, 性能に影響する部分は全コードの1%にも満たない部分(多重ループの最も内側とか)であるか, あるいは逆に主要なアルゴリズム自体に問題があるかに大別できる場合がほとんどです.
ここで人手による最適化を行うのは前者ですね. ソフト的な面からはコンパイラが予想できないデータ(問題)の特性をコード内にヒントとして埋め込んで一層の最適化を進めたり, 既に最適化されたライブラリを使わせるようにします. ハード的な面からは, 昔はパイプラインを伸ばすためにループアンローリングさせたり, メモリバンクアクセスのバッティングを防ぐために配列サイズを奇数にしたりしましたけど. テストランできる環境(例えばSX-6i等)があれば, それほど大きな手間じゃないことが多いです.
後者のアルゴリズムの問題は小手先じゃどうしようもないですね. 分子動力学や多体問題なんかはGRAPEを使った方が良いですし, 問題が十分に疎ならばPCクラスタの方が有利でしょう. これらの手段も使えないとなると
という選択です.
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
私はプログラマです。1040 formに私の職業としてそう書いています -- Ken Thompson
活かしきれるのかな? (スコア:1, 興味深い)
しかし、現行の地球シミュレータなどを活かし切ったソフトウェアは開発されてるんですかね?
その辺りがかなり重要な気がする。
Re:活かしきれるのかな? (スコア:5, 参考になる)
いろいろあるらしく。
http://www.ne.jp/asahi/comp/tarusan/main66.htm [www.ne.jp] あたり参照。
で、数十Tflopsで足りないアプリケーションなんてそこいら中に山の
ように転がってます。
とりあえずタンパク質のMD(分子動力学計算)を使
Re:活かしきれるのかな? (スコア:1)
>> プログラマが性能分析ツールを駆使して 直接コードをいじってベクトル化率・並列化率を上げるそうである
とあります.
このプログラマがコードを最適化する時間(日数)やこのプログラマを雇う人件費etcを考慮しても
地球シミュレータが目的としている分野の計算では圧倒的なパフォーマンス
(コスト,計算時間,やりたいことが実現できているかetc)を示すと思っていてよいのでしょうか?
Re:活かしきれるのかな? (スコア:3, 参考になる)
実際に多くのプログラムでは, 性能に影響する部分は全コードの1%にも満たない部分(多重ループの最も内側とか)であるか, あるいは逆に主要なアルゴリズム自体に問題があるかに大別できる場合がほとんどです.
ここで人手による最適化を行うのは前者ですね. ソフト的な面からはコンパイラが予想できないデータ(問題)の特性をコード内にヒントとして埋め込んで一層の最適化を進めたり, 既に最適化されたライブラリを使わせるようにします. ハード的な面からは, 昔はパイプラインを伸ばすためにループアンローリングさせたり, メモリバンクアクセスのバッティングを防ぐために配列サイズを奇数にしたりしましたけど. テストランできる環境(例えばSX-6i等)があれば, それほど大きな手間じゃないことが多いです.
後者のアルゴリズムの問題は小手先じゃどうしようもないですね. 分子動力学や多体問題なんかはGRAPEを使った方が良いですし, 問題が十分に疎ならばPCクラスタの方が有利でしょう. これらの手段も使えないとなると
という選択です.
Re:活かしきれるのかな? (スコア:0)
だから最初の一発が重要、と思うんだけど、違うのかな?