くだすれFORTRAN(超初心者用)その4

このエントリーをはてなブックマークに追加
943デフォルトの名無しさん:2010/03/21(日) 05:46:40
ね。
Commom使うな教の教義は静的であることの保証がないという点にある。
でもDEC神がCommonはLabelアリ無し関係無しに静的配置にしますと規定したので後続もしたがった。
だから、規格原典にしたがえば、Allocateした変数をCommonに関連付けることもできるけど、
ほとんどのコンパイラは警告するか処理を打ち切る・・のが普通だけど、
やはり規格外のベンダ依存な部分は恐いやね。うっかりやっちゃいそうだし、
複数人でなんかコード作るときは禁忌にしておかないとあとで悲惨な事になる><

以前はコモン使いまくりだった(実際その方が速かった時期が長い、とおもう)けど
最近では固定サイズなら配列名をArgumentに羅列しても速度は違わんね。
動的配列やら自動配列みたいにコンパイルする時点でサイズ不明だと遅くなる事がおおいけど、
これはループの終端値が不定なせいでUnrollingが抑制されるからで
メモリ配置最適化ができないことの影響は無いか小さいとおもう・・・ので最近
コモン使うよ教から使わないよ教に主旨かえしたw。 コモン使うなよ教になる気はないけどね。
944デフォルトの名無しさん:2010/03/21(日) 17:50:52
毎年入ってくる新入生がfortranを勉強しようと77の本を手に取るのを
黙って見過ごすのはえも言われぬ空しさがある・・・
嗚呼負のスパイラル
945デフォルトの名無しさん:2010/03/21(日) 19:03:59
Visual Basic のように簡単に Windows用 GUI アプリケーションが作れる Fortran のベンダーを知りませんか。
Intel の Visual Fortran だとなんだか難しそうで‥‥。
Absoft Pro Fortran や PGI Visual Fortran なら簡単にできますか?
946デフォルトの名無しさん:2010/03/21(日) 20:51:54
>>944
これ以上77なソースを増やさないでくれ
たのむ
947デフォルトの名無しさん:2010/03/22(月) 08:06:59
>>945
DEC神wの系列の quickwin 以上に簡単なもの無理じゃないかねぇ
>>944,946
wwww
F77より後の機能をちゃんと間違えなく使おうとするとF77しらないと、
ということも多いからね。LatexとTexみたいなもので知ってても困らん。
まあ学生のうちに複数の計算機なり人間の言語に触れることは良い事だ
948デフォルトの名無しさん:2010/03/22(月) 12:52:03
>>947
しかし、大概の77のテキストは

100 FORMAT(1H , ・・・・・

などとなっていて、「この1H っては何ですか?」などと聞いてこられるので、
66から勉強しろとも言えず、ホレリスからイチイチ説明するのもメンドイので
いい加減に流すのであった。ラインプリンタも見ることも無いし。


テキスト書く人は、もう少し頑張って欲しい。
ほとんど情弱化している。
最近出た入門Fortranとか、g95とGNUPlotでFortranとか期待したのに、中身があまりに古くて爆死した。

949デフォルトの名無しさん:2010/03/22(月) 13:25:00
なるほど、Hは・・・聞かれるといろいろ困るなw

どこまで・どこからの線引きは難しいなあ。
Doループも長〜いやつだと意図して番号+Continueするとかあるし・・・
gfortran -Wall
だと年代wのチェックはしないしねぇ。いいチェッカがあるといいんだけど。

教科書は・・・英字のも含めてあまり進歩はないような。
教科書的なのは儲からんのだろうね。
漫画でわかる・・とかでないといかんのかね。だれか
「やる夫がFortranで何かするようです」でも作ってよ。
950デフォルトの名無しさん:2010/03/22(月) 13:58:59
やる夫がやる気のない教科書を参考にしたようなコードを書こうとする度に
やらない夫のツッコミが入るとかw
951デフォルトの名無しさん:2010/03/22(月) 18:35:01
>>947
>F77より後の機能をちゃんと間違えなく使おうとするとF77しらないと、
“ちゃんと”学ぶのであればそれでいいんだけど、大半はそこまでの探求心を持たないんだよね。
つーかこの手の問題はFortranに限った話じゃないのかもしれん・・・
952デフォルトの名無しさん:2010/03/23(火) 04:15:24
(AA略)
いまどき固定書式〜
固定書式が許されるのは50過ぎだけだよね〜

・・・むかつくな
953デフォルトの名無しさん:2010/03/23(火) 04:24:44
まったく関係ないけど、gfortran を入れるとおまけ(?)でgccも入ってくるのね。
Win機に一年前にいれてたのに今気づいた・・・
954デフォルトの名無しさん:2010/03/23(火) 06:37:25
>>953
gfortran が gcc のオマケ
955デフォルトの名無しさん:2010/03/23(火) 07:22:19
>>954
そうなんだけど、このスレ的には指摘してほしくなかったw
956デフォルトの名無しさん:2010/03/24(水) 05:31:14
Intel Visual Fortran と PGI Visual Fortran のどちらを買おうか迷っています。
Intel Visual Fortran に対する PGI Visual Fortran の優位性は何かあるでしょうか?
957デフォルトの名無しさん:2010/03/24(水) 05:48:04
ない
958956:2010/03/24(水) 05:49:41
速さとかどうなんでしょう?
959デフォルトの名無しさん:2010/03/24(水) 06:46:56
GPGPUとかやるならPGI。MPIの並列デバッグとかもやりやすいはず。
960デフォルトの名無しさん:2010/03/24(水) 09:16:36
ほうほう、いいこと聞いた。
Intel のをずいぶんながく使ってきたおかげ(これはこれでよいものではある)で
他のをあまりしらない通りすがりだけど、ありがとう。参考にしよう。
961デフォルトの名無しさん:2010/03/24(水) 15:43:38
GPGPUねぇ
Fortran対応してるってのが売りだったっけか
実際使いもんになるの?
962デフォルトの名無しさん:2010/03/24(水) 23:21:08
ちょちょいとやってぱっというわけには行かないけど、
OpenMPみたいに対象のループ前後にディレクティブ挿入するだけのやつでも
それなりの高速化は図れる。MPIと同等かそれより簡単なくらい。
CUDA fortranは敷居高いけどきちんとチューニングしたらかなり早い。
勉強中だけどMPIより難しいと思う。もちろん元の計算の並列性にもよる。
963デフォルトの名無しさん:2010/03/25(木) 03:32:14
CUDAに限らないけど、CPU外部のユニットに計算を依頼するタイプのは
データ格納の配列を大量に宣言するからメモリがんがん喰うよね。
964958:2010/03/25(木) 17:32:41
>>959 >>962
いい情報が聞けました。ありがとうございました。
他にもPGIの優れた点があったら,ぜひ引き続きお教えください m(_ _)m
965デフォルトの名無しさん:2010/03/25(木) 20:21:16
CUDAは難しすぎる・・・
966デフォルトの名無しさん:2010/03/26(金) 04:44:57
cuda openmp mpi...特性というかいろいろ前提が違うからねぇ。
ま〜3つとも使えるからしばらくは Fortran を使いつづけてもいいか
967デフォルトの名無しさん:2010/03/26(金) 09:28:40
openmpは簡単
968デフォルトの名無しさん:2010/03/26(金) 11:07:49
>>967
元のコードに付け足すだけだからね。簡単だしお手軽。Coreが2個以上のPCがあればWinでもLinuxでも
自宅でおてがるに並列計算ができてしまう。gfortran ならタダだし。Macはしらん。
OpenMPだけで一生めしが喰えるとは思えないけど、100CPUくらいならあんまり激烈に能率は落ちない
システムも多いし、知っていて損はしないとおもう。
・・・まあFortranの話じゃなかったね。
969デフォルトの名無しさん:2010/03/26(金) 11:10:37
>>950
文関数使ったやる夫がやらない夫に殴られる・・とか
暗黙の型宣言つかったやる夫が(略)
970デフォルトの名無しさん:2010/03/26(金) 11:16:52
do 30 i = 1. 5
 (なんとかかんとか)
30 continue
に気付かないやらない夫を笑うやる夫、とか。
971デフォルトの名無しさん:2010/03/26(金) 13:17:03
素朴な質問なんだがC/C++を使わずにFORTRANのみを
使う人って数値演算用ライブラリを使いたいためか?
972デフォルトの名無しさん:2010/03/26(金) 14:43:18
>>968
SMPで100CPUって当分先じゃない?・・・と思ったが、
今出回ってるのがせいぜい12コアのCPUが4つ(4way)で
計48コアだから、そう先の話でもないか
973デフォルトの名無しさん:2010/03/26(金) 19:53:02
>>971
>FORTRANのみを使う人
イマドキこんなやつはいないか、いても老人。
FORTRAN使う理由云々ならわかるけど
974デフォルトの名無しさん:2010/03/26(金) 19:57:43
ふと思ったんだが、大文字でFORTRANって言うと、通常は77のことを指すんだよね?
975デフォルトの名無しさん:2010/03/26(金) 20:41:50
77「以前」が正解
77だけじゃなくて66なども含む
976デフォルトの名無しさん:2010/03/26(金) 22:08:20
大文字とか小文字とか些末なこと2ちゃんで気にするなよ
977デフォルトの名無しさん:2010/03/26(金) 23:46:20
>>973
いやいやw
本職メインで、計算機はしょうがないから使ってるタイプは、Fortranしかやってないよ。
コンピュータ嫌いだから。
978デフォルトの名無しさん:2010/03/27(土) 00:10:10
本職メインの意味が分からない
979デフォルトの名無しさん:2010/03/27(土) 00:18:39
頭痛が痛い
980デフォルトの名無しさん:2010/03/27(土) 01:53:30
>>972
疑似共有ならSMP100コア以上というのは大学の計算機センタなら帝大でなくてもわりとあるよ。

980番になるとおもうけど・・・スレ立て能力ないので、どなたかプリーズ。
981デフォルトの名無しさん:2010/03/27(土) 15:59:06
>>977
だろうね。オレもそうだった。計算論いじりなんぞに費やす時間があるなら
他の事に回したい。
982デフォルトの名無しさん:2010/03/27(土) 16:05:54
>>980
そうなの?Intel、AMD系のシステム?
SGIのAltixなら使ってる(た)が、あれも100まではなかった希ガス

>>981
そういう人達のニーズもきっちり取り込むのが、Fortranが今も続いている理由だからな
983デフォルトの名無しさん:2010/03/27(土) 17:16:42
>>871
うちの職場の仕事は流体解析分野などなんだけど,C/C++ は使わず,
Intel Fortran(と Cシェル スクリプトと GMT と AWK と たまに
ExcelVBA)を使っている。

仕事は外部の研究者からの計算依頼でコーディングする,という
パターンだけれど, 過去に他人が作った FORTRAN プログラムを使ったり,
自分で Fortran 90/95 プログラムを作ったりで,C/C++ は今のところ
必要ないので俺は全然使ってない。
ただ同じ職場でも人によっては VC++ で OpenGL やってる人もいる。

どちらにせよ,俺は C/C++ が大嫌いで(←良し悪しではなく完全に
好みの問題。気を悪くされたらごめん)Fortran が大好きな Fortranist だから,
今の環境にはとても満足している。
984983:2010/03/27(土) 17:22:04
アンカー間違えた。
>>971
でした。ごめんなさい m(_ _;)m
985デフォルトの名無しさん:2010/03/27(土) 17:31:27
FortranはCに乗り換える必然性があるほど問題のある言語でもないし、
むしろ配列演算が便利で並列化コンパイルに有利だし、
別にFortran一本でやっててもいいと思う
ただしFORTRAN、てめーはダメだ
986デフォルトの名無しさん:2010/03/27(土) 17:36:19
>>985
全面的に同意! (≧o≦)/~
987デフォルトの名無しさん:2010/03/27(土) 17:54:10
配列演算って、A(:)=B(:)+C(:)みたいな?
Cでは出来ないの?
988デフォルトの名無しさん:2010/03/27(土) 18:05:25
forで回すしかない
せいぜいそういう関数を作って誤摩化すのが関の山
C++ならそういうクラスを(ry
989デフォルトの名無しさん:2010/03/27(土) 22:40:36
>>978
大学とかにいれば本職メインでない人いっぱい見てるだろw

10年くらい前の、自作クラスターブームの頃、その手のシンポジウムとかに
物理学科の奴らが大挙して出てきたので、情報学科の奴らがあいつら何者だよwwwと
生暖かく見ていたのが思い出される。

990デフォルトの名無しさん:2010/03/28(日) 00:43:57
本職メイン
991デフォルトの名無しさん:2010/03/28(日) 00:44:31
>>988
ないのかぁ
規格にはなってなくても、ベンダー独自で拡張してるかと思ってた
992デフォルトの名無しさん
落ちるまでに次スレ書きたいから、作っちゃったよ。
テンプレ改良する暇もなかったが、変えたい人は次スレで議論してくだしあ。

くだすれFORTRAN(超初心者用)その5
http://pc12.2ch.net/test/read.cgi/tech/1269704830/