Я написал код, чтобы установить привязку каждого процесса под моим именем только к ядру 0. Я запустил этот код, а затем он вышел, как только закончил.
Затем, даже когда я запустил совершенно новый терминал и открыл с ним python, его привязка была по-прежнему привязана к ядру 0. Ожидаемое поведение по умолчанию для новой запущенной оболочки python, разумеется, сродство как с ядром 0, так и с ядром 1.
Дело не в том, что что-то заставляет все процессы Python иметь одинаковую привязку к процессору - я проверил это, установив два разных процесса Python на два разных ядра.
Другой эксперимент, который я провел, - установить привязку только процессов Python к ядру 0 (все остальные процессы не затрагиваются). Затем, когда я запустил новую оболочку Python, ее сходство было все еще нормальным (не фиксированным только до 0). Это говорит о том, что существует какой-то особый не-Python-процесс, который управляет сродством ЦП новых процессов Python.
Мой вопрос: что это за особый процесс?
Для справки, для установки и проверки соответствия процессоров, я использовал psutil.Process.cpu_affinity
из библиотеки Python psutil
.