PythonでCPUコア数を取得する方法
Python
でシステムのCPUコア数を取得するための方法はいくつかありますが、最もシンプルなのがos
モジュールやmultiprocessing
モジュールを使用する方法です。
os.cpu_count()
を使用
os.cpu_count()
は、システム上の論理CPUコアの数を返します。このメソッドはPython
標準ライブラリのos
モジュールに含まれており、追加のインストールは必要ありません。
import os
print(os.cpu_count())
multiprocessing.cpu_count()
を使用
multiprocessing
モジュールでも、CPUコア数を取得できます。このメソッドは、並列処理やプロセスプールを設定する際に便利です。
import multiprocessing
print(multiprocessing.cpu_count())
どちらの方法でも同じ結果が得られ、システムに搭載されている論理プロセッサの数が出力されます。
マルチプロセッシングでの応用
Python
のmultiprocessing
モジュールは、複数のプロセスを利用した並列処理をサポートします。コア数に基づいて、最適なプロセス数を設定することでパフォーマンスを向上させることができます。
from multiprocessing import Pool, cpu_count
def worker(num):
return num * 2
if __name__ == "__main__":
with Pool(cpu_count()) as p:
result = p.map(worker, range(10))
print(result)
この例では、システムのコア数に応じたプロセスプールが作成され、効率的に並列処理が行われます。
まとめ
Python
でシステムのCPUコア数を取得するには、os.cpu_count()
やmultiprocessing.cpu_count()
を使うのが簡単で便利です。特にマルチプロセッシングを利用する際に、コア数に応じたプロセス設定はパフォーマンス向上に大きく貢献します。