如何並行化Python 循環以獲得多核心效能
問題:
問題:答案:Python 解釋器強制執行全域解釋器鎖定 (GIL),禁止相同解釋器的執行緒並發執行 Python 程式碼。因此,對於 CPU 密集型任務,利用多個進程而不是執行緒會更有效率。與進程池的並行化:
Python提供了兩種建立流程池的簡單方法:pool = multiprocessing.Pool(4) out1, out2, out3 = zip(*pool.map(calc_stuff, range(0, 10 * offset, offset)))
with concurrent.futures.ProcessPoolExecutor() as pool: out1, out2, out3 = zip(*pool.map(calc_stuff, range(0, 10 * offset, offset)))
以上是如何並行化受 CPU 限制的 Python 循環以獲得多核心效能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!