python平行計算 python平行計算

2021-10-11 11:45:23 字數 765 閱讀 5136

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

1. concurrent

2. 併發:asynico

3. ipython下的平行計算:

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

4. 分布式訊息非同步任務佇列:

celery是基於分布式訊息傳遞的非同步任務佇列/作業佇列。它專注於實時操作,但也支援排程。

執行單元(稱為任務)使用多處理,eventlet或gevent在單個或多個工作伺服器上併發執行。任務可以非同步(在後台)或同步執行(等到準備好)。

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

5. parallel python:

6. mpi: 程序間通訊,mpi4py

7. 分布式發行版:intel®distributionfor python 。

8. 計算加速:numba

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

10. 時下較活躍的庫

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

11. scoop不活躍了啊

同時,python社群的最新趨勢不是在集群上分配任務,而是將它們放在高效能gpu上(大多數超級計算機將在不久的將來成為gpu)。有許多python庫來處理這些任務,包括繫結到opencl和cuda。

資料密集型與計算密集型融合?

平行計算模型

平行計算模型通常指從並行演算法 的設計和分析出發,將各種並行計算機 至少某一類並行計算機 的基本特徵抽象出來,形成乙個抽象的計算模型。從更廣的意義上說,平行計算模型為平行計算提供了硬體和軟體介面 在該介面的約定下,並行系統硬體設計者和軟體設計 者可以開發對並行性 的支援機制,從而提高系統的效能。有幾...

平行計算模型

平行計算指的在同一時刻存在多於乙個計算任務被執行。由於cpu主頻提高的上限,使用多核心處理器進行平行計算早已成為主流。gpu也是乙個多核心的處理器,但它的平行計算模型與多核的cpu有很大區別。我們有必要了解gpu的並計算模型。對平行計算模式進行分類是了解cpu和gpu平行計算區別的有效方式。一種分類...

xgboost平行計算

boosting不是一種序列的結構嗎?xgboost怎麼可以實現並行的?xgboost的並行不是tree粒度的並行,xgboost也是一次迭代完才能進行下一次迭代的 第t次迭代的代價函式裡包含了前面t 1次迭代的 值 xgboost的並行是在特徵粒度上的。我們知道,決策樹的學習最耗時的乙個步驟就是對...