- 締切済み
GIMPSに参加し始めたのですが
最近GIMSPに参加するようになり、Prime95でひたすら計算させています。 実行しているPCはCore2Duoを搭載しているのですが、実行している最中にちょっと気になったのでタスクマネージャーを起動し、パフォーマンスのタブを開いてみると、片方のコアしか稼動していませんでした。 どうやらPrime95は並列化されていないようです。 しかし、せっかくのデュアルコア。PCの前から離れたときなどは二つのコアをフル活用してほしい。しかし、単にプログラムをコピーして実行しただけでは、二つのプログラムが全然違う数値に対して計算をしているようでした。 できれば、一つの計算値に対して二つのコアで計算してほしいと思っています。インターネットでGIMPS参加している人のページを見ていて、チームを組んで複数のPCで計算している人もいるのを知り、同じことを一台のPCできないものかと思いました。 できないなら仕方ないですが、他のデュアルコアCPUをフルに活用する方法を教えてください。 また、このプログラムで演算を高速にするためには、Core2やPhenomなどのマルチコアCPUよりも、Pentium4などのクロック周波数が非常に高いもののほうが有利なんでしょうか?あわせて教えてください。 よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- fx70_2150
- ベストアンサー率57% (123/213)
一つのプログラムが、複数のコアを使うようにするには、マルチスレッド化しなければならず、非常に面倒なんです。 複数のスレッドで、一度に別々の計算をさせるのが、有効活用する近道といえます。 >このプログラムで演算を高速にするためには、Core2やPhenomなどのマルチコアCPUよりも、Pentium4などのクロック周波数が非常に高いもののほうが有利なんでしょうか? このプログラムでは、同じ種類のコアなら、2コアで周波数の高いCPUが、4コアで周波数の低いCPUより、速くなります。 1コアCPUだと、このプログラムでフル活用できるのはいいのですが、操作を受け付けない状態になります。 Pentium4については、効率の悪いCPUなので、クロックが高くても、セレロンDよりましな程度です。 Core2DuoやPhenomより、高速なんてことは、ありません。
お礼
その面倒さを超えれば便利になったり計算が速くなったりしないのかと思ったのですが、確かに各コア間でのやり取りが発生する分、単純に2倍の性能が出るわけではないのですね。 それなら各コアに別々に計算させたほうが効率は高いのでしょうか。メモリへのアクセスが2倍になるから、やはり性能が2倍になることはないでしょうけど。 なるほど、コアの種類によっても性能は変化するんですねぇ。そんなにPentium4が性能が悪いとは思ってませんでした。Pentium3時代からPCを使い始めたもので、Pen4使ったPCの快適さに感涙したのですが。。。 時代の変化ですかねぇ。 回答、ありがとうございました。