首页 >

python并行计算是concurrent.futures还是pp好用? |tws python

python代码 游戏,python 像素处理,智游python,python的库分几种,python knime,python绝望,裂缝长度python,ceac考题python,python如何素数,python美团,tws pythonpython并行计算是concurrent.futures还是pp好用? |tws python

concurrent.futures

concurrent.futures是一个为异步执行的可调用对象提供高层次接口的Python模块。

开发者可以通过ThreadPoolExecutor使用线程来执行异步任务,也可以通过ProcessPoolExecutor使用进程来执行这些任务。

特点:

  • ThreadPoolExecutor和ProcessPoolExecutor都继承了Executor,所以拥有相同的接口,可以在必要时修改并转换。

  • 线程池和进程池的使用,可以大大提高程序的管理能力,节约程序开销。

示例代码:

defsample():

withThreadPoolExecutor(max_workers=4)ase:

e.submit(shutil.copy,’data1.txt’,’data1_handled.txt’)

e.submit(shutil.copy,’data2.txt’,’data2_handled.txt’)

e.submit(shutil.copy,’data3.txt’,’data3_handled.txt’)

e.submit(shutil.copy,’data4.txt’,’data4_handled.txt’)

defsample2():

executor=ThreadPoolExecutor(max_workers=4)

e.submit(shutil.copy,’data1.txt’,’data1_handled.txt’)

e.submit(shutil.copy,’data2.txt’,’data2_handled.txt’)

e.submit(shutil.copy,’data3.txt’,’data3_handled.txt’)

e.submit(shutil.copy,’data4.txt’,’data4_handled.txt’)

executor.shutdown()

PP

PP是一个开源跨平台的轻量级纯Python模块,它为运行在SMP(systemswithmultipleprocessors,多处理器系统)和集群上的Python并行代码提供了运行机制。

具有以下特征:

  • 动态分配进程处理器

  • 支持多处理器和集群

  • 动态平衡任务分配

示例代码:

ppservers=()

#ppservers=(“10.0.0.1”,)

iflen(sys.argv)>1:

ncpus=int(sys.argv[1])

job_server=pp.Server(ncpus,ppservers=ppservers)

else:

job_server=pp.Server(ppservers=ppservers)

print”Startingppwith”,job_server.get_ncpus(),”workers”

job1=job_server.submit(sum_primes,(100,),(isprime,),(“math”,))

result=job1()

选用

模块的选用并没有固定的结果,只能说根据项目的具体需求并结合模块的特点来比较得出某一个模块更加适合的结果。

比如需要快速开发的时候,偶个人倾向于concurrent.futures,大家目前开发的机器学习推荐系统项目就是使用的concurrent.futures。

而当项目需要集群才能有足够计算力的时候,偶倾向于使用PP,大家开发的一部分深度学习引擎项目就是使用的PP。

选用什么还是需要因地制宜。

最后

小伙伴给偶看看你们的大拇指,不甚感激,跪拜。。。


python并行计算是concurrent.futures还是pp好用? |tws python
  • select语句如何查找某个时间段的数据? - 网络|
  • select语句如何查找某个时间段的数据? - 网络| | select语句如何查找某个时间段的数据? - 网络| ...

    python并行计算是concurrent.futures还是pp好用? |tws python
  • 大学生前端就业状况如何? - 网络|
  • 大学生前端就业状况如何? - 网络| | 大学生前端就业状况如何? - 网络| ...

    python并行计算是concurrent.futures还是pp好用? |tws python
  • 云南昆明巫家坝国际机场二字代码? - 网络|
  • 云南昆明巫家坝国际机场二字代码? - 网络| | 云南昆明巫家坝国际机场二字代码? - 网络| ...