Junior — Middle
127
Peut-on réaliser un traitement multiprocesseur en le répartissant entre différents cœurs du processeur?
Entreprises à qui on a demandé
ООО Корпорация ЗНАК
Réponse de l'IA
sobes.tech IA
Да, в Python можно реализовать многопроцессорную обработку, распределяя задачи между разными ядрами процессора. Для этого используется модуль multiprocessing, который создает отдельные процессы, каждый из которых может выполняться на отдельном ядре, обходя ограничение GIL (Global Interpreter Lock).
Пример использования multiprocessing:
from multiprocessing import Pool
def f(x):
return x * x
if __name__ == '__main__':
with Pool(4) as p: # создаем пул из 4 процессов
results = p.map(f, [1, 2, 3, 4, 5])
print(results) # [1, 4, 9, 16, 25]
Таким образом, задачи распределяются между процессами, которые могут выполняться параллельно на разных ядрах.