複雑な数学計算では、余分なスレッドや高速ディスクアクセスの方が重要ですか。


8

来学期は、組合せ論の研究を始めたいと思います。私はMacコンピューターとWolfram Mathematica 8を使用してきましたが、このプロジェクトで使用したり大学で使用したりするつもりです。私は物理学と数学のダブルメジャーになります。予算が限られているため、どちらのアプリケーションが優先されるのか疑問に思いました。2コアプロセッサの代わりに4コアプロセッサを使用するか、ハードドライブの代わりにSSDを使用するか。


1
私は自由に質問のタイトルを編集して、おそらくもう少し要点をつけ、実質的な質問をしないことに基づいて、ひざまずく投票を締めくくる可能性があります。これは、この特定のアプリケーションにとって良い質問だと個人的に感じています。
Shinrai、2011年

3
私は実際には最初にできるだけ多くのRAMを使用すると言います。
liori

1
RAMを追加することに同意します。私は組み合わせ論についてほとんど理解していませんが、それらはGPUベースの計算に適している可能性があります。大量にスレッド化できる場合は、CUDAまたは同等の機能を使用するGPUではるかに高速に実行される可能性があります(md5クラッキングよりもはるかに高速で、範囲を超えたCPUの場合)。
Silverfire、2011年

なぜこれが賛成票を獲得しているのか、私は知りたいのですが、この質問について何が不愉快だと思いますか
Shinrai、

回答:


17

これから行うアプリケーションでは、SSDよりも4コアの方が適しています。

Mathematicaは特にマルチコアプロセッサをサポートし、非常によく拡張します。こちらをご覧ください:

http://www.wolfram.com/technology/guide/MulticoreSupport/

ディスクからのギガバイトのデータを処理していない数学および物理アプリケーションのSSDドライブとの大きな違いは期待できません。


+1-これは、SSDよりも多くのコア/より高いクロックが大きなメリットをもたらす非常に少数のインスタンスの1つです。また、はるかに遠く、ほとんどのMacのストレージを後でアップグレードする方がCPUよりもFARの方が簡単です。
11年

私は通常、このような質問は好きではありませんが、これはかなり事実です。これらの種類の計算の速度は(それらがささいな複雑さでない限り)、追加の処理スレッドから非常に後押しされます。
Shinrai、2011年

1
私も数年前に同様の決定に直面しました。ハードドライブ付きのi486DX33またはフロッピードライブのみのi486DX50を入手してください。純粋な数学的計算(私が関係していたものなど)の場合、ディスクアクセスが大幅に遅いにもかかわらず、DX50は勝ちました!
Brian Knoblauch、2011年

高速なディスクからメリットを得るために必要な巨大なファイルについては部分的に反対します。過去15年間、私は一連の核および素粒子物理解析エンジンとモンテカルロスを使用してきました。そして、これらは適度に大きなデータの山をふるいにかけたものの、IOバウンドのデータに共通していたのは、10個の構成ファイル(メカニズムやフェイルオーバーのデフォルトの複数のレイヤーを含む)などの多くの個別のファイルと中程度のディスクを使用していたことです。ベースのジオメトリデータベース、3つのログファイル、チェックポイントシステム。
dmckee ---元モデレーターの子猫'13

1
+1-しかし、システムに十分なRAMがあることを確認することもお勧めします。システムに4 GBではなく8 GBあることを確認し(Lionでは実際にはそれで十分です)、GBのデータを処理する場合を除いて、より高速なCPUが必要です。(掘削調査、核爆弾シミュレーションなど)後でより多くの/より速いストレージが必要な場合は、いつでもThunderboltに接続された外部ボックスを使用できます。Mac Proを使用するのでない限り、CPUを変更することは現実的ではありません。
SplinterReality 2011年

3

新しいコンピューターの要件を検討する際には、組み合わせ爆発への対処に関する教授の推奨事項を参考にすることをお勧めします。あなたは間違いなくこの副作用を持ついくつかの問題に取り組む必要があります。中間ストレージ要件が使用可能なメインメモリを超えると、システムはディスクメモリスワッピング(スラッシング)を開始し、単純な問題でさえ「永久に」完了するまでに時間がかかります。

過去数年間Mathematicaでこのような問題を解決しなければならなかったとき、私のモットーは「スラッシュしたら死​​んでしまう」でした。


2

ソファの象についてはまだ誰も触れていないので、これを別の答えとして提供します。

ほとんどのMac(Mac Pro以外のもの)でCPUを後で変更することは現実的ではありませんが、非常に大きなデータセットがある場合、高速の外部ストレージを後で追加することができます。これは、内部ドライブに保存するのは実際的ではありません。

GBからTBの高いデータを必要としないものには、CPUの方が効果的です。GB/ TBの高いデータが必要な場合、SSDはデータをカットせず、外部ボックスが必要になります。

私の推奨事項: 8 GBのRAMと余裕のある最速のCPU。TBのデータを処理するために後で非常に高速なディスクが必要な場合は、Thunderboltインターフェースを備えた外部ボックスを購入してください。(とにかく最大のSSDはそれほど多くは保持しません)


1

タスクを並列化できる場合(そして数学/物理学の場合は通常そうすることができます)、複数のコアと、必要なだけの余裕のあるRAMを使用します。一般に、(さまざまな方法で処理された)古いデータを保存するために大量のディスク領域が必要であり、CPU部分と比較して計算のIO部分が無視できる状況になります。深刻な計算のニーズに合わせてプログラムできる優れたGPUを入手することを検討します。しかし、これはおそらくあなたの質問には行き過ぎです。

1GBのデータをディスクからバッファー(メモリーに移動できる)にロードするには、7200rpmのハードディスクでは約10秒かかります。これは、ほとんどの計算で1回限りのコストです。複雑な数学の計算に数秒かかることはめったにありません(もしそうなら、ボトルネックは結果を解釈し、実行する新しいタスクを与えることです-IO速度ではありません)。データがメモリにロードされるところに計算上のボトルネックがあることは決して異常ではなく、タスクを完了するのに1コア2日かかります。しかし、4コアなら、半日で完了できます。十分なRAMがなく、RAMをディスクに読み書きする必要があると、速度が大幅に低下します(SSDドライブをスワップとして使用する場合でも)。

大まかなガイドとして; RAMからのランダムアクセスの読み取りには、10 ns程度かかります。SSDからそれよりも1万倍遅い(100マイクロ秒); ハードディスクの速度は約100倍(10ミリ秒)です。そのため、SSDまたはハードディスクからのランダムアクセス読み取りを実際に実行する必要はありません。また、ディスクから連続して読み取る場合(たとえば、データセット全体を含むファイルをメモリに読み取っている場合)は、ハードディスクのパフォーマンスが低下しません。


-1

あなたがMacBook Proを見ているなら、私は何よりも画面サイズの設定を優先するでしょう。私が見ることができるものから、これはマシンのコアの数も効果的に定義します。次に、RAMを最大化します(おそらくサードパーティ)。次にSSDを調べます。15インチモデルの2.0GHzコアと2.2GHzコアの違いは最後まで残しておきます。価格の違いによるパフォーマンスの違いは比較的小さいものです。


このような深刻な作業については、OPはラップトップではなくデスクトップを見ていると思います。あなたは(...はい、でもアップルMcOverpricedから)ずっとあなたのお金のための処理能力を得る
Shinrai

@Shinrai OPが何を検討しているか、価格帯が何か、OPにすでにモニターが搭載されているかどうかなどの詳細な情報がないと、言うのは難しい... iMacは、素晴らしいディスプレイを含め、価格に対してかなり良いマシンです。クアッドコアプロセッサを持っています。しかし、このコンピューターは大学用でもあり、ラップトップを図書館に持って行ったり、グループで会議を行ってプロジェクトに取り組んだりするのに魅力的だと思います...ラップトップでも、GPUを利用して追加(高速)できることがよくあります。 )Mathematica内からの(追加のプログラミングによる)特定のタイプの計算のためのコア
ブレットチャンピオン、
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.