Path: coconuts.jaist!wnoc-tyo-news!news.nc.u-tokyo.ac.jp!makino From: makino@chianti.c.u-tokyo.ac.jp (Jun Makino) Newsgroups: fj.lang.fortran,fj.comp.parallel Subject: Re: How does HPF optimize ? Date: 01 Jun 1997 04:17:20 GMT Organization: College of Arts and Sciences, Univ. of Tokyo Lines: 70 Message-ID: References: <2500.865082798@rananim.ie.u-ryukyu.ac.jp> NNTP-Posting-Host: muscat.c.u-tokyo.ac.jp In-reply-to: kono@ie.u-ryukyu.ac.jp's message of 31 May 1997 12:48:15 GMT Xref: coconuts.jaist fj.lang.fortran:1342 fj.comp.parallel:907 >>>>> On 31 May 1997 12:48:15 GMT, kono@ie.u-ryukyu.ac.jp (Shinji Kono) said: > 河野 真治@琉球大情報工学です。fj.lang.fortran は読んでなかった... > HPF は、どちらかというと、 > F77, F90 -> HPF > という形での自動変換を想定して作られているのではないでしょうか? うーん、そういう使い方をされる場合もあるってのは確かだと思います が、もともとの想定が自動変換であったかっていうと、必ずしもそうで はないように思います。並列性の表現という観点からは F90: F77 風のシーケンシャルな制御構造の他に、まあ APL 風といえな くもない配列演算を追加 HPF: F90に、さらに分散メモリの機械でのデータ分割指定などを追加 ということですよね?配列演算の追加ってのは、例えば Illiac IV 用の IVTRAN (でしたっけ?)のころからあるわけですが、そういうのが自動 変換を想定しているっていうことはないと思います。 まあ、人が書くにしてもトランスレータがだすにしても、 HPF では並列 性が陽に表現されるということには変わりはないので、あまり本質的な 問題ではありませんが。 > だから、結構詳細に並列実行を規定したいわけですよね。実際、そういう > ツールがいくつかあるはずです。Zima 博士の「スーパーコンパイラ」 > って本がオーム社から出ていますね。この本にはHPFは出てないけど.. Zima の本は91年くらいでしたっけ?まだ HPF は固まってなかったんじゃ ないでしょうか。 > 能率が悪いのはわかっているけど、能率の良い並列プログラムをいきなり > かくのは難しいし、 うーん、 data parallel (でもSIMDでも疑似SIMDでもSPMDでもいいです が)で書けるようなものについては、能率の良い並列プログラムをいき なりかくのは必ずしも難しくないってのが、まあ、そのあたりをやって いた人、例えば Hillis とか Steele の主張ではありますよね。 > そして並列言語で標準的なものもないし、言語はあってもportablity > はないと... で、既存の言語からの変換ってのは結構重要ですよね。 既存の言語からの変換が重要ってのはもちろん実用的には(あるいは商 業的には)そのとおりですね。とはいえ、これから F90なりHPFが標準に なったりするんだと(なるんでしょうか?)未来永劫重要ってわけでは ないと思います。とはいえ、移行が(比較的)容易で、しかもある程度 ハードに依存しないようになってないと、あんまり使われないってこと はあるんでしょうね。 > In article , > makino@chianti.c.u-tokyo.ac.jp (Jun Makino) writes: >> なんてのがあります。これをパラパラと見ると、 C は F90 に比べて並 >> 列性の抽出がかなり大変で、、、なんてことが書いてあったりしますが。 > そりゃそうだ.. 自由度が大きい言語の方が難しいです。 これはもちろんいまさらいうまでもないことなのですが、元の記事を書 かれた方の学部の卒業研究のテーマが、既存のCプログラムから並列性を 抽出してマルチスレッドのプログラムに変換しようというものなのだそ うなので、、、 > 僕だったら、 > それ専用の言語を設計しますが... たぶんアルゴリズム記述 + 証明 > 言語みたいなものの方がいいですよね。(でも、そうすると、文芸的 > プログラミングの世界に近くなってしまうか...) もともとが既存の言語から自動変換されて欲しいっていう話ですから、 新しい言語をってのは目的からはずれていると思います。 牧野@東大駒場