2008-08-06 14 views
8

Dual対Quadcoreの説明はQuadcores自体と同じくらい古いので、答えは通常「あなたのシナリオに依存します」です。ここでシナリオはWebサーバーです(Windows 2003(x32またはx64の場合はわかりません)、4 GB RAM、IIS、ASP.net 3.0)。Webサーバー上の高速コアと比較して

私の印象は、リクエストは通常​​軽量であるため、WebサーバのCPUがそれほど高速である必要はないため、多くの小さなリクエストがあるほど、より(より遅い)コアを選択する方が良いはずです。

しかし、私はIISロードバランシングの経験があまりなく、間違った選択をしたことを知るために多額の費用を費やしたくないので、もう少し経験のあるコメントもっと遅くなったり、早くなくなったコアが優れているかどうか

答えて

15

Webサーバーのようなものでは、各接続を処理するタスクを分割するのは(比較的)簡単です。私は、Webサーバーが並列コードの最も一般的な(そしてアイロンをかけた)使い方の1つだと言うのは安全だと言います。また、処理の多くを複数の別々のスレッドに分割できるため、実際にはより多くのコアが役立ちます。これは、共有ホスティングが可能な大きな理由の1つです。 IISやApacheなどのサーバーソフトウェアが要求を並行して実行できない場合、すべてのページ要求がキューファッションで処理されなくてはならないことになります。

これは、Windows 2008 Server Enterpriseのようなハイエンドサーバーのオペレーティングシステムが64コアと2TBのRAMをサポートする理由です。これらは、実際に多くのコアを利用できるアプリケーションです。

また、各リクエストはCPU負荷が低い可能性が高いため、おそらく(アプリケーションによっては)より低速のコアを使用する可能性があります。明らかに各コアをより高速にするということは、各タスクをより早く完了させることができ、理論的にはより多くのタスクとより多くのサーバー要求を処理できることを意味します。

1

より多くの方が良いです。プログラミング言語がより複雑で抽象的になるにつれ、より多くの処理能力が必要になります。

Atleat JeffはQuadcore is betterと考えています。

3

私たちはLinux上でapacheを使用します。これは、プロセスをフォークしてリクエストを処理します。実行キューに待機しているプロセスの待ち時間を短縮するので、より多くのコアがスループットに役立つことがわかりました。 IISでの経験はあまりありませんが、同じシナリオがスレッドプールに適用されると思います。

3

マークハリソンは言った:

私はIISでの多くの経験を持っていないが、私は同じシナリオがそのスレッドプールに適用されます想像してみてください。

実際には、より多くのコアが並行して実行されています。 IISは本質的にマルチスレッド化されており、これを簡単に利用できます。

関連する問題