【Python】マルチプロセッサJupyterではできない場合pyに移動


マルチプロセッサプール、プロセス、キューの基本説明:https://m.blog.naver.com/townpharm/220951524843

Pool

def f(x):
    print("값", x, "에 대한 작업 Pid = ",os.getpid())
    time.sleep(1)
    return x*x

p = Pool(n_process)
...
p.map(f, range(0, 10))
プロセスにまたがって入力値を割り当てることで、並列化関数の実行に便利な手段を提供します.

Process

procs = []

for n in range(0, 10):
	proc = Process(target = f,args = (n, ))
    procs.append(proc)
    proc.start()
   
for proc in procs:
	proc.join()
Poolとは異なる流れを割り当てる感覚?
実際の問題はupyterがQueue()に割り当てられない理由で、Poolもいつもエラーが発生しています...でも.
https://github.com/ipython/ipython/issues/10894

この文章では、インタラクティブ解釈器がだめだと言っているのを見てpython file(.py)と書き、terminalでロールバックして解決しました