Parallel Python for loop

An example on Windows:

from joblib import Parallel, delayed
import multiprocessing
    
data = range(100) 
def process_task(i):
    print (i)

if __name__ == '__main__':
    num_cores = multiprocessing.cpu_count()
    results = Parallel(n_jobs=num_cores)(delayed(process_task)(i) for i in data)


An example on Linux:


from joblib import Parallel, delayed
import multiprocessing
    
data = range(100) 
def process_task(i):
    print (i)

num_cores = multiprocessing.cpu_count()
results = Parallel(n_jobs=num_cores)(delayed(process_task)(i) for i in data)

Note that on Windows, there must be a "if __name__ == '__main__':" to avoid recursive spawning of subprocesses over the code in the scope of main. 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章