使用可能なコアと同じ数のスレッドを実行する必要がある Windows 上の C でプログラムを作成しています。しかし、コア数を取得する方法がわかりません。何か案は?
17037 次
5 に答える
8
GetSystemInfo
WinAPI 関数を呼び出すことができます。SYSTEM_INFO
これは、プロセッサの数 (複数のコア CPU を持つシステム上のコアの数) を持つ構造体を返します。
于 2010-04-11T23:59:40.143 に答える
5
NUMBER_OF_PROCESSORS 環境変数を読み取ることができます。
于 2010-04-12T00:00:28.510 に答える
2
Windows の起動時に「cmd」と入力し、「cmd.exe」を開きます。次のコマンドを入力します。
WMIC CPU Get /Format:List
「NumberOfCores」や「NumberOfLogicalProcessors」などのエントリが見つかります。通常、論理プロセッサはスレッド化によって実現されます。したがって、関係は通常次のようになります。
NumberOfLogicalProcessors = NumberOfCores * コアあたりのスレッド数。
各コアは処理ユニットを提供するため、スレッド化により、論理処理ユニットは実空間で実現されます。
詳細はこちら。
于 2017-01-19T06:09:44.957 に答える
1
質問は .NET を扱っており、あなたの質問は C を扱っていますが、基本的な回答が役立つはずです。
于 2010-04-12T00:04:33.920 に答える