dポイントプレゼントキャンペーン実施中!

お世話になります.初めて書き込みします.

今現在
(1)Compaq Visual Fortran Standard Edision for Win32 x86 Systems(Version6.6)

(2)Fortran & C Package V2.0(Fujitsu)

の2つを使用してfortranのプログラムを行っています.これらを動かすのに最速なパソコンをご存知の方ぜひ教えてください.ちなみに今使用しているパソコンは
Pentium4 DELL
OS:Windows 2000
CPU:1.8GHz

です.dual CPUを使用するとかえって遅くなるとか,macやLINUXを使用した方が速い等の噂も聞くのですがその辺ご存知の方もぜひご回答ください.(FujitsuのFortranについてはV4.0にUPグレードさせる予定です)プログラムの作り方によって速度もかなり変わるかと思いますが,個人の考えでも構いませんので宜しくお願いします.

A 回答 (1件)

具体的な処理内容が不明ですので、機種やスペックを提示するのは難しいです。


思い付く点だけを雑然と…

・Fortranをコンパイルするのでしたら、動作するCPUに最適化するオプションがあると思います。
コンパイラが動作保証、最適化に対応したCPUの方が有利でしょう。
PentiumとPentium4なんかだと、比較になりませんが…。

・現在の処理が大量にメモリを必要とし、搭載している実メモリが十分でないために仮想メモリのためのHDDのスワップの処理に時間を取られているのなら、メモリを増設すれば良いです。この場合はCPUを高速なものに変更しても効果ありません。


> dual CPUを使用するとかえって遅くなるとか,macやLINUXを使用した方が速い等の噂も聞くのですが

こちらはそれぞれ根拠があっての話です。

・dualCPUの場合、処理をどちらのCPUで行うか?分散するのなら割合は?などを別途処理しなければならないので、dualCPUの一方しか使用されないようなプログラムであれば、単純に処理を行う場合に比べて余計な処理が必要になります。こういう処理をオーバーヘッドなどとも呼びます。

・MacとPentiumでは得意とする計算の分野が異なります。詳しくは知りませんが、単純な画像処理なんかですとMac有利のような話があったかも。

・Linuxの場合、起動した状態でWindowsに比べて動作している処理を少なくできるので、OSによるオーバーヘッドが少ないと言えます。極端な話、コマンドラインで起動するようにすれば、余計な画面を書く処理は必要無くなります。
Windowsのコマンドラインはどちらかと言うと緊急用ですね。

--
まずは、処理に必要なメモリ容量を見積もる、dualCPUで処理できるように計算手順を2分割するなど、どこで時間がかかっているのかを調査して、そこに対して重点的な処置、強化を行うのが良いです。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます.
計算内容としては差分法を主とするプログラムです.今現在1つの収束計算自体は10秒~1分程度(条件により)なのですが,分割数が膨大なために1日かけて1つの条件を計算することもあり,この時間をなるべく短縮したいと考えています.画像処理は他で行っているので,Fortranの使用は全て数字対象としています.以上の条件から具体的なパソコンspecがわかるようでしたら何か教えていただけると大変ありがたいのですが.それとdualCPUの処理分散方法について,詳しいことご存知でしたらぜひ教えて下さい.(参照HPでもかまいませんので)Linux使用のFortranソフトもあたってみようかと思います.

お礼日時:2004/04/16 08:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!