python並行計算


0. 基礎並行/發:multiprocessing/threading

1. concurrent

2. 並發:asynico

3. Ipython下的並行計算:

    使用ipyparallel庫的IPython提供了前所未有的能力,將科學Python的探索能力與幾乎即時訪問多個計算核心相結合。系統可以直觀地與本地或網絡的計算節點集群進行交互,而不管集群的實現方式如何。

這種易於交互使用幫助IPython和Python成為各種學科的科學計算和數據科學的流行工具。https://ipyparallel.readthedocs.io/en/latest/demos.html

https://ipyparallel.readthedocs.io/en/latest/demos.html

4. 分布式消息異步任務隊列:

     Celery是基於分布式消息傳遞的異步任務隊列/作業隊列。它專注於實時操作,但也支持調度。

執行單元(稱為任務)使用多處理,Eventletgevent在單個或多個工作服務器上並發執行任務可以異步(在后台)或同步執行(等到准備好)。

Celery用於生產系統,每天處理數百萬個任務。

5. Parallel Python:https://www.parallelpython.com/content/view/15/30/

6. mpi: 進程間通信,mpi4py

7. 分布式發行版:Intel®Distributionfor Python 。https://software.intel.com/en-us/distribution-for-python

8. 計算加速:numba

9. 分布式計算框架:spark, dask

https://wiki.python.org/moin/ParallelProcessing

https://www.imooc.com/article/17970?block_id=tuijian_wz

https://github.com/pgiri/dispy

 10. 時下較活躍的庫

https://github.com/ray-project/ray

https://pathos.readthedocs.io/en/latest/pathos.html#module-pathos.multiprocessing

https://pycos.sourceforge.io/tutorial.html#asynchronous-concurrent-programming

windows 下只能試下pathos了,ray不行

11. scoop不活躍了啊

 

同時,Python社區的最新趨勢不是在集群上分配任務,而是將它們放在高性能GPU上(大多數超級計算機將在不久的將來成為GPU)。有許多Python庫來處理這些任務,包括綁定到OpenCL和CUDA。

 

https://hpc-carpentry.github.io/hpc-python/06-parallel/

 

數據密集型與計算密集型融合?

 

 https://www.quora.com/Is-there-any-Deep-Learning-library-that-works-on-MPI-Spark-or-any-distributed-platform-without-using-any-GPUs

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM