943 :
デフォルトの名無しさん:2010/03/21(日) 05:46:40
ね。
Commom使うな教の教義は静的であることの保証がないという点にある。
でもDEC神がCommonはLabelアリ無し関係無しに静的配置にしますと規定したので後続もしたがった。
だから、規格原典にしたがえば、Allocateした変数をCommonに関連付けることもできるけど、
ほとんどのコンパイラは警告するか処理を打ち切る・・のが普通だけど、
やはり規格外のベンダ依存な部分は恐いやね。うっかりやっちゃいそうだし、
複数人でなんかコード作るときは禁忌にしておかないとあとで悲惨な事になる><
以前はコモン使いまくりだった(実際その方が速かった時期が長い、とおもう)けど
最近では固定サイズなら配列名をArgumentに羅列しても速度は違わんね。
動的配列やら自動配列みたいにコンパイルする時点でサイズ不明だと遅くなる事がおおいけど、
これはループの終端値が不定なせいでUnrollingが抑制されるからで
メモリ配置最適化ができないことの影響は無いか小さいとおもう・・・ので最近
コモン使うよ教から使わないよ教に主旨かえしたw。 コモン使うなよ教になる気はないけどね。
毎年入ってくる新入生がfortranを勉強しようと77の本を手に取るのを
黙って見過ごすのはえも言われぬ空しさがある・・・
嗚呼負のスパイラル
Visual Basic のように簡単に Windows用 GUI アプリケーションが作れる Fortran のベンダーを知りませんか。
Intel の Visual Fortran だとなんだか難しそうで‥‥。
Absoft Pro Fortran や PGI Visual Fortran なら簡単にできますか?
>>944 これ以上77なソースを増やさないでくれ
たのむ
>>945 DEC神wの系列の quickwin 以上に簡単なもの無理じゃないかねぇ
>>944,946
wwww
F77より後の機能をちゃんと間違えなく使おうとするとF77しらないと、
ということも多いからね。LatexとTexみたいなもので知ってても困らん。
まあ学生のうちに複数の計算機なり人間の言語に触れることは良い事だ
>>947 しかし、大概の77のテキストは
100 FORMAT(1H , ・・・・・
などとなっていて、「この1H っては何ですか?」などと聞いてこられるので、
66から勉強しろとも言えず、ホレリスからイチイチ説明するのもメンドイので
いい加減に流すのであった。ラインプリンタも見ることも無いし。
テキスト書く人は、もう少し頑張って欲しい。
ほとんど情弱化している。
最近出た入門Fortranとか、g95とGNUPlotでFortranとか期待したのに、中身があまりに古くて爆死した。
なるほど、Hは・・・聞かれるといろいろ困るなw
どこまで・どこからの線引きは難しいなあ。
Doループも長〜いやつだと意図して番号+Continueするとかあるし・・・
gfortran -Wall
だと年代wのチェックはしないしねぇ。いいチェッカがあるといいんだけど。
教科書は・・・英字のも含めてあまり進歩はないような。
教科書的なのは儲からんのだろうね。
漫画でわかる・・とかでないといかんのかね。だれか
「やる夫がFortranで何かするようです」でも作ってよ。
やる夫がやる気のない教科書を参考にしたようなコードを書こうとする度に
やらない夫のツッコミが入るとかw
>>947 >F77より後の機能をちゃんと間違えなく使おうとするとF77しらないと、
“ちゃんと”学ぶのであればそれでいいんだけど、大半はそこまでの探求心を持たないんだよね。
つーかこの手の問題はFortranに限った話じゃないのかもしれん・・・
(AA略)
いまどき固定書式〜
固定書式が許されるのは50過ぎだけだよね〜
・・・むかつくな
まったく関係ないけど、gfortran を入れるとおまけ(?)でgccも入ってくるのね。
Win機に一年前にいれてたのに今気づいた・・・
>>953 gfortran が gcc のオマケ
>>954 そうなんだけど、このスレ的には指摘してほしくなかったw
Intel Visual Fortran と PGI Visual Fortran のどちらを買おうか迷っています。
Intel Visual Fortran に対する PGI Visual Fortran の優位性は何かあるでしょうか?
ない
958 :
956:2010/03/24(水) 05:49:41
速さとかどうなんでしょう?
959 :
デフォルトの名無しさん:2010/03/24(水) 06:46:56
GPGPUとかやるならPGI。MPIの並列デバッグとかもやりやすいはず。
960 :
デフォルトの名無しさん:2010/03/24(水) 09:16:36
ほうほう、いいこと聞いた。
Intel のをずいぶんながく使ってきたおかげ(これはこれでよいものではある)で
他のをあまりしらない通りすがりだけど、ありがとう。参考にしよう。
GPGPUねぇ
Fortran対応してるってのが売りだったっけか
実際使いもんになるの?
ちょちょいとやってぱっというわけには行かないけど、
OpenMPみたいに対象のループ前後にディレクティブ挿入するだけのやつでも
それなりの高速化は図れる。MPIと同等かそれより簡単なくらい。
CUDA fortranは敷居高いけどきちんとチューニングしたらかなり早い。
勉強中だけどMPIより難しいと思う。もちろん元の計算の並列性にもよる。
CUDAに限らないけど、CPU外部のユニットに計算を依頼するタイプのは
データ格納の配列を大量に宣言するからメモリがんがん喰うよね。
964 :
958:2010/03/25(木) 17:32:41
>>959 >>962 いい情報が聞けました。ありがとうございました。
他にもPGIの優れた点があったら,ぜひ引き続きお教えください m(_ _)m
CUDAは難しすぎる・・・
cuda openmp mpi...特性というかいろいろ前提が違うからねぇ。
ま〜3つとも使えるからしばらくは Fortran を使いつづけてもいいか
openmpは簡単
>>967 元のコードに付け足すだけだからね。簡単だしお手軽。Coreが2個以上のPCがあればWinでもLinuxでも
自宅でおてがるに並列計算ができてしまう。gfortran ならタダだし。Macはしらん。
OpenMPだけで一生めしが喰えるとは思えないけど、100CPUくらいならあんまり激烈に能率は落ちない
システムも多いし、知っていて損はしないとおもう。
・・・まあFortranの話じゃなかったね。
>>950 文関数使ったやる夫がやらない夫に殴られる・・とか
暗黙の型宣言つかったやる夫が(略)
do 30 i = 1. 5
(なんとかかんとか)
30 continue
に気付かないやらない夫を笑うやる夫、とか。
素朴な質問なんだがC/C++を使わずにFORTRANのみを
使う人って数値演算用ライブラリを使いたいためか?
>>968 SMPで100CPUって当分先じゃない?・・・と思ったが、
今出回ってるのがせいぜい12コアのCPUが4つ(4way)で
計48コアだから、そう先の話でもないか
>>971 >FORTRANのみを使う人
イマドキこんなやつはいないか、いても老人。
FORTRAN使う理由云々ならわかるけど
ふと思ったんだが、大文字でFORTRANって言うと、通常は77のことを指すんだよね?
77「以前」が正解
77だけじゃなくて66なども含む
大文字とか小文字とか些末なこと2ちゃんで気にするなよ
>>973 いやいやw
本職メインで、計算機はしょうがないから使ってるタイプは、Fortranしかやってないよ。
コンピュータ嫌いだから。
本職メインの意味が分からない
頭痛が痛い
>>972 疑似共有ならSMP100コア以上というのは大学の計算機センタなら帝大でなくてもわりとあるよ。
980番になるとおもうけど・・・スレ立て能力ないので、どなたかプリーズ。
>>977 だろうね。オレもそうだった。計算論いじりなんぞに費やす時間があるなら
他の事に回したい。
>>980 そうなの?Intel、AMD系のシステム?
SGIのAltixなら使ってる(た)が、あれも100まではなかった希ガス
>>981 そういう人達のニーズもきっちり取り込むのが、Fortranが今も続いている理由だからな
>>871 うちの職場の仕事は流体解析分野などなんだけど,C/C++ は使わず,
Intel Fortran(と Cシェル スクリプトと GMT と AWK と たまに
ExcelVBA)を使っている。
仕事は外部の研究者からの計算依頼でコーディングする,という
パターンだけれど, 過去に他人が作った FORTRAN プログラムを使ったり,
自分で Fortran 90/95 プログラムを作ったりで,C/C++ は今のところ
必要ないので俺は全然使ってない。
ただ同じ職場でも人によっては VC++ で OpenGL やってる人もいる。
どちらにせよ,俺は C/C++ が大嫌いで(←良し悪しではなく完全に
好みの問題。気を悪くされたらごめん)Fortran が大好きな Fortranist だから,
今の環境にはとても満足している。
984 :
983:2010/03/27(土) 17:22:04
アンカー間違えた。
>>971 でした。ごめんなさい m(_ _;)m
FortranはCに乗り換える必然性があるほど問題のある言語でもないし、
むしろ配列演算が便利で並列化コンパイルに有利だし、
別にFortran一本でやっててもいいと思う
ただしFORTRAN、てめーはダメだ
配列演算って、A(:)=B(:)+C(:)みたいな?
Cでは出来ないの?
forで回すしかない
せいぜいそういう関数を作って誤摩化すのが関の山
C++ならそういうクラスを(ry
>>978 大学とかにいれば本職メインでない人いっぱい見てるだろw
10年くらい前の、自作クラスターブームの頃、その手のシンポジウムとかに
物理学科の奴らが大挙して出てきたので、情報学科の奴らがあいつら何者だよwwwと
生暖かく見ていたのが思い出される。
本職メイン
>>988 ないのかぁ
規格にはなってなくても、ベンダー独自で拡張してるかと思ってた