Написание параллельного цикла
Я пытаюсь запустить параллельный цикл на простом примере.
Что я делаю неправильно?
from joblib import Parallel, delayed
import multiprocessing
def processInput(i):
return i * i
if __name__ == '__main__':
# what are your inputs, and what operation do you want to
# perform on each input. For example...
inputs = range(1000000)
num_cores = multiprocessing.cpu_count()
results = Parallel(n_jobs=4)(delayed(processInput)(i) for i in inputs)
print(results)
Проблема с кодом заключается в том, что при запуске в среде Windows в Python 3 он открываетсяnum_cores
экземпляры python для выполнения параллельных заданий, но активен только один. Этого не должно быть, так как активность процессора должна составлять 100% вместо 14% (в i7 - 8 логических ядер).
Почему лишние экземпляры ничего не делают?