さまざまなプログラミング環境での CPU コア数の検出
はじめに
数の決定マシン上のコアの数は、コードのパフォーマンスとリソース割り当てを最適化するために重要な要素です。すべてのプラットフォームに共通の解決策はありませんが、利用可能なプラットフォーム固有の方法はあります。
C 11 以降
C 11 では std::thread:: が導入されています。 hardware_concurrency() 関数。ハードウェア スレッドの数を取得する標準化された方法を提供します。このメソッドは、クロスプラットフォームの互換性のために推奨されます。
#include <thread> const auto processor_count = std::thread::hardware_concurrency();
C 11 より前の代替
C 11 より前のプラットフォーム固有のメソッドは次のとおりです。必須。
Win32:
SYSTEM_INFO sysinfo; GetSystemInfo(&sysinfo); int numCPU = sysinfo.dwNumberOfProcessors;
Linux、Solaris、AIX、Mac OS X:
int numCPU = sysconf(_SC_NPROCESSORS_ONLN);
FreeBSD、MacOS X、NetBSD:
int numCPU; ... sysctl(mib, 2, &numCPU, &len, NULL, 0);
Mac OS X 用の Objective-C およびiOS
Objective-C は、次のような単純なアプローチを提供します。
NSUInteger processorCount = [[NSProcessInfo processInfo] processorCount];
以上がさまざまなプログラミング言語や環境での CPU コアの数を検出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。