アプリ版:「スタンプのみでお礼する」機能のリリースについて

大学の研究で数値計算をしなければなりません。

計算に使用するプログラムは市販されているもので、計算に必要な知識やノウハウなどはプログラムを動かしたり計算をしながら覚えていくしかないと考えています。

今悩んでいるのは計算に使用するパソコンです。
いままではノートパソコンで計算をしていましたが、ステップ数を本来必要な計算の1/10に設定した場合でも12時間以上かかってしまうことがわかりました。
そのパソコンはノートパソコンで、仕様はCPUが1.7GHz、メモリが2GBです。
大学等にあるデスクトップパソコンでも計算してみましたが、私の所有するノートパソコンよりもクロック周波数・メモリ共に劣るせいなのか、計算時間がかなりかかってしまいました。

一回の計算に膨大な時間がかかってしまうので、これを解消したいのですが、現在使用できるPCではこれが困難です。
思い切って、数値計算用にPCを新しく購入しようかとも考えてもいるのですが、コンピューター関連の知識が乏しいこともあり、どういったものを購入すればいいのかわかりません。
個人的にはCPUが3GHz程あるノートパソコンがあれば、と考えているのですが・・。

大学やお仕事などで数値計算をされたご経験をお持ちの方で数値計算に適したパソコンや、数値計算向けにパソコンをカスタマイズする方法をご存知の方がいらっしゃいましたら、ご教授ください。

その他、パソコンで長時間計算をする際、留意すべきことなどございましたら是非ご教授いただきたく存じます。
よろしくお願い致します。

A 回答 (5件)

ご存知とは思いますが、繰返しの数値計算で速度に一番影響するのは、アルゴリズムの見直しでしょう。

その次にマシンスペックだったり、アルゴリズム以外のプログラムの工夫だったりでしょうか。
私はマシン以外のところを少しばかり。

アルゴリズムの見直しは、純水に数学の問題として改善可能な場合が多いと思います。求め方の根本的な考え方を変えてみたり、式変形などで繰返しの一回の計算量が少なくて済むようにしてみたりです。あと、ニュートン方とかご存知ですよね。少ない繰返し回数で精度良く求める方法が色々考案されてますので、ご存じでなかったらまた質問して下さい。(私には回答できませんが。笑)
プログラムの工夫とは、1回の計算の中で、さらに簡単な計算の繰返しを含んでいるような場合(つまりループの入れ子のことです)、その簡単な計算を仮に100回ループさせるのであれば、ループさせないで同じ計算式を100行書いたりすると高速化出来たりします。言語によっては計算式を細かく分けるより、1つの式が長くなっても式の数を少なくしたほうが速くなるとか色々あります。この辺はパズルの要領で試行錯誤するしかないでしょう。

以上ご存知でしたら、また既に検討済みでしたら、すみません。

この回答への補足

回答ありがとうございます。

ニュートン法は一応知っているという程度です。
なにせ、数値計算に関してもど素人なもので・・。
PCのスペックばかり気にしていましたが、計算方法やソースコードなどを見直す必要がありそうですね。

試行錯誤するしかないということですが、これについては最近痛感しています。
回り道はしたくないですが、なんとかいろいろ工夫してみます。

補足日時:2008/06/13 20:36
    • good
    • 1

3DCGだとレンダリングに12時間とか珍しく無いんですけどね


>パソコンで長時間計算をする際、留意すべきこと
廃熱と騒音
CPUが平常使用時に比べて発熱します。
PCが置いてある部屋で寝る必要がある場合…かなり気になります。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

PCが通常時に比べて発熱しているというのはなんとなくわかります。
電源を入れっぱなしにすることが少ないもので、なんだか落ち着かないですが、熱と音には気を配りたいと思います。

お礼日時:2008/06/09 04:18

現在使っているCPUが何なのかわかりませんが、FSB400MHz世代でなければ1.7GHzはありません。

(1.73GHzはある)
π計算をするベンチマークでは、Pentium4-M1.70GHzからE8400に移行すると15%程度の時間で計算できます。
今のパソコンの性能が1.7GHzで最強だったとしても50%程度でしょうか。

一方、ソフトの方をマルチスレッド化すると、デュアルコアで推定1.8倍計算速度を上げることができます、クアッドコアなら3倍程度です。

参考URL:http://xx-xxx-xx.hp.infoseek.co.jp/kikaku1/super …
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

私の使用できるPCの中で現在最も高スペックなのは1.7GHzくらいです。

ソフトのマルチスレッド化についてですが、もし私の使用しているソフトでそれが可能であるなら検討しなければならないかもしれませんね。

お礼日時:2008/06/09 04:16

予算は?


できるだけ安くするなら7万円~で3GHzのCore2DuoE8400搭載機が買えます。
お勧めはこちら。
http://www.twotop.co.jp/simple/vip_product2.asp? …
到着後に2GB×2を増設して、4.5GB程度をRAMディスクとして使うとさらに数%時間短縮が可能だと思います。
http://pc11.2ch.net/test/read.cgi/win/1211559803/

予算がないならこのあたり。
http://www1.jp.dell.com/content/topics/segtopic. …
    • good
    • 1
この回答へのお礼

回答ありがとうございます。

予算等は特に決まっておりませんが、現時点では自己負担になる可能性が高いような気がします。
ですので、なるべく安く済ませたいです。

また、パソコンの自作はおろかメモリの増設すらやったことがありませんので、うまくカスタマイズできる自信がありません。
ですので、私自身の能力を考えると購入するのが無難かと・・。

となると、ご紹介いただいたDELLが一番いいかもしれませんね。

お礼日時:2008/06/05 19:37

シングルスレッドのプログラムを使っているのでしょうか?


であればマルチスレッドに書き換えて2コア以上のシステムを使えば高速化できます。
あるいはMPU用のライブラリがあれば、PCクラスタを使って計算するとか。

外部ソフトによっては、データセンターなど大規模計算システムを前提としているものもあります。
大学の計算機システムや外部のシステムが使えないかどうか確認してください。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

シングルスレッドかマルチスレッドか、ということについてですが、申し訳ございません。私だけでは判断できません。
数値計算に関してずぶの素人なもので・・。

大学の計算機システムを使用することも考えているのですが、利用料金や場所を選ばず計算することなどを考えて、ノートPCでいいものがないかと思い、質問させていただきました。

ですが、並列計算や大学の計算機システムについても検討してみます。

お礼日時:2008/06/05 19:48

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