2017-02-01 10 views
-1

私は、2台のPCの性能を比較し、どちらのPCが他のどのPCより速くタスクを実行するかを知るC#アプリケーションを作成したいと考えています。コンピュータのパフォーマンスを判断するアルゴリズムはありますか?

これにはアルゴリズムがありますか? ((NumberOfProcessCurntlyRunning * AvailableRAM)+ CPUUsageなど)。

コンピュータとハードウェアが同じ2台のコンピュータがあるとします。

+0

パフォーマンス全体のベンチマークテストを実施してください:http://www.userbenchmark.com/Software – Svekke

+2

あなたは2台のPCを持っていますが、どちらがタスクをより速く実行するのかを知りたいのですか? 2台のPCでタスクを実行して試してみましたか?それはあなたに答えを与えるでしょう...! (私の回答があなたが探しているものでない場合は、質問を明確にしてください) –

+1

ありがとうございます。しかし、私は後で、アプリケーション上でそれをコードすることができる明確なアルゴリズムが欲しい。 – Eyadkht

答えて

2

いいえ、全体的なコンピュータのパフォーマンスを判断するアルゴリズムはありません。全体のパフォーマンスに影響を与える可能性のあることはたくさんあります。

比較対象を決定する必要があります。メモリへのアクセス、CPUキャッシュの効率、GCの効率性、それぞれの機能を実装します。

ブラインドテストが必要で、特定のメトリックに気にしない場合は、同じ機能(クイックソートなど)を実行して時間を記録し、ミリ秒を比較することができます。

3

コンピュータの全体的な性能を決める汎用アルゴリズムがないことに同意するので、科学者が論文の信頼性の高いベンチマークを作成するために使用されているアルゴリズムがあります。したがって、同じ問題をターゲットにした別のソリューションを実装した場合、以前のチームとは異なるマシンで作業していても、以前に発見されたソリューションよりも優れているかどうかを判断できます。

ベンチマークアルゴリズムdfmaxの1つの例があります。これは、現在のマシンがどれくらい速いかについての霧のようなアイデアを短時間で得ることができますが、利用可能なRAMを考慮に入れません。しかし、それはあなたのためのいくつかのスタートかもしれないと思う。

関連する問題