4つ以上のコアを持つ複数のマシンで動作するC++で開発された32ビットアプリケーション。アプリケーションでコア/プロセッサ消費量を分析しています。 32ビットアプリケーションで複数のコアを使用できるかどうか尋ねたいと思いますか?はいの場合は、それを確認する方法はありますか?32ビットアプリケーションが複数のコア/プロセッサを使用するかどうか
0
A
答えて
2
32/64-bitは、仮想メモリのアドレス指定にアプリケーションが使用するビット数です。アプリケーションが使用するコア数は、その数から完全に独立しています。
通常、アプリケーションはアクティブなスレッドを持つものと同じ数の使用可能なコアを使用します(Hans Passantは正しく指摘しているため、他のスレッド、IOなどを待っているスレッドがブロックされる可能性があります。いずれのコアについても)。
タスクマネージャでプロセスのCPU使用率を確認するだけです。プロセスがCPUの100%/number_of_cores
未満を使用すると、効果的にシングルスレッドになります。より多くを利用するなら、それは複数のコアで動作することを意味します。あなたの目的は、マルチスレッド技術を適切に使用して、利用可能なCPUの100%
を利用させることです(32ビット版の問題とは関係ありません)。
関連する問題
- 1. c:64ビットアプリケーションで32ビットポインタを使用しますか?
- 2. 64ビットアプリケーションと32ビットアプリケーション間のブリッジ
- 3. 64ビットアプリケーションが32ビットプロセスを開始する
- 4. 64ビットグローバルフックが32ビットアプリケーションをロックする
- 5. 64ビットマシンでVisual Studioを使用して32ビットアプリケーションをコンパイルする
- 6. 32ビットアプリケーションを使用して64ビットシステム上のショートカットファイルからターゲットパスにアクセスする
- 7. 64ビットアプリケーションの32ビット部分をどのようにデバッグ(GDB)できますか?
- 8. 32ビットアプリケーションから64ビットレジストリにアクセス
- 9. LD_PRELOAD_PATH(64ビット環境での32ビットアプリケーション用)
- 10. 32ビットアプリケーションから64ビットのコマンドラインを起動できますか?
- 11. 32ビットアプリケーションから64ビットレジストリを読み取る
- 12. 64ビットプラットフォーム上の32ビットアプリケーションのパフォーマンス
- 13. 64ビットWindows(メモリ)の32ビットアプリケーションの動作
- 14. 32ビットアプリケーションからCOM経由でx64アセンブリを呼び出す
- 15. 32ビットアプリケーションは何を意味していますか?
- 16. 32ビットアプリケーションからCEF3 64ビットを呼び出す
- 17. 32ビット/ 64ビットアプリケーション、OS、プロセッサの関係は?
- 18. 32ビット実行可能ファイルが大きいにもかかわらず、32ビットアプリケーションが64ビットバージョンより少ないRAMを使用する理由
- 19. FreeBSDで32ビットアプリケーションで4GB以上のRAMを使用できます
- 20. Windows上の64ビットアプリケーションで32ビットODBCドライバを使用することはできますか?
- 21. 64ビットマシンを使用して32ビットアプリケーションを開発することはできますか?
- 22. 64ビットアプリケーションが32ビットWindowsサービスを呼び出す - VS 2013デバッグ
- 23. 32/64ビットアプリケーションをチェックするためのレジストリキーの読み込み
- 24. 複数のpthreadが同じ関数を使用するとどうなるか
- 25. ubuntuの32ビットアプリケーションをビルドし、64ビットのlibを使って実行する
- 26. 64ビットで32ビットアプリケーションを移行する際の問題
- 27. 64ビットアプリケーションから32ビットとしてC#アセンブリ(dll)を実行できますか?
- 28. 64ビットコンピュータ上の32ビットアプリケーションで、Large Address Awareフラグはどのように機能しますか?
- 29. IIS7のサイトで32ビットアプリケーションを有効にすると、500エラーが発生する
- 30. Delphi 32ビットアプリケーションWindows 7のWow64の32ビットインストーラで作成されたレジストリキーが見つかりません
32ビットアプリケーションでは、64ビットアプリケーションよりコアの使用量が少なくて済みます。わからない場合は、デバッガを使用します。デバッガの[スレッド]ウィンドウが適切です。技術的には、[並行性アナライザ](https://msdn.microsoft.com/en-us/library/dd537632.aspx)で効果的に使用されるコアの数は、複数のスレッドが同時に複数のコアを使用する。スレッドはコードをスレッドセーフに保つために互いにロックする習慣があります。タスクマネージャは単純な傾向があります。 –
ありがとうHans。並行処理アナライザを使用して試してみます。どうもありがとう。 – Vivek
@HansPassantもう1つ確認していただけますか? 64ビットプロセスにはこのような制限はありません。使用可能なすべてのCPUを同時に使用できます。 – Vivek