Python 3.4+osфункция
os.cpu_count
os — система
Возвращает число логических процессоров в системе (или None, если не определить).
Синтаксис
os.cpu_count()
Считает процессоры системы, а не те, что доступны программе: в контейнере с ограничением или при привязке к ядрам реально доступных может быть меньше. Число процессоров, доступных текущему процессу, даёт os.process_cpu_count (3.13+) или len(os.sched_getaffinity(0)) на Linux. Может вернуть None — для размера пула пишите os.cpu_count() or 1.
Примеры
import os
print(os.cpu_count()) # → ? число логических процессоров, например 8 (или None, если определить не удалось)
cpus = os.cpu_count() or 1 # страховка: None заменяем на 1
print(min(4, cpus)) # → ? размер пула воркеров: 4 на машине с 4+ ядрами
print(len(os.sched_getaffinity(0))) # → ? только Unix: сколько ядер реально доступно процессу (может быть меньше os.cpu_count())
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности