mpi4py

    0熱度

    1回答

    我有使用comm.Scatterv和comm.Gatherv以下MWE以在給定數量的核(size) import numpy as np from mpi4py import MPI import matplotlib.pyplot as plt comm = MPI.COMM_WORLD size = comm.Get_size() rank = comm.Get_rank()

    4熱度

    2回答

    如何修改以下代碼(改編自http://materials.jeremybejarano.com/MPIwithPython/pointToPoint.html),以便每個comm.Send實例都被root = 0收到並打印輸出。此時,只收到第一個發送命令。 #passRandomDraw.py import numpy from mpi4py import MPI from mpi4py.M

    2熱度

    1回答

    我想用mpi4py使用python。然而,當我在Python環境中運行from mpi4py import MPI,我得到以下錯誤: Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: dlopen(/usr/local/lib/python2.7/site-packag

    2熱度

    1回答

    我有一個很大的csv文件,我需要處理每一行來計算一些單詞。我需要使用一些MPI方法在多個進程之間分配數據處理。目前,我正在使用分散/收集mpi4py庫。問題是我需要創建一個長度等於進程數量的數組。但是,在創建大行數列表時,出現內存錯誤。 size = comm.Get_size() f=open('x.csv') lines=[[] for _ in range(size)] for lin

    1熱度

    1回答

    我有一個程序,旨在高度並行化。我懷疑有些處理器正在儘快完成這個Python腳本,然後是其他處理器,這將解釋我在這段代碼的上游觀察到的行爲。這段代碼是否有可能允許一些mpi進程比其他進程更早完成? dacout = 'output_file.out' comm = MPI.COMM_WORLD rank = comm.Get_rank() nam ='lcoe.coe' csize = 10

    0熱度

    1回答

    如果我想列出每個溝通者的變量ID,我怎麼能做到這一點?下面是一個試圖證明這一點的想法: from mpi4py import MPI comm = MPI.COMM_WORLD obj = "I am an example. My ID is unique to each communicator." mpi_id = 'rank %i has id %s'%(comm.rank, str

    2熱度

    2回答

    MPI標準,3.0表示約mpi_scatterv: 計數,類型和位移的說明書不應根造成任何位置被讀取多於一旦「 然而,在代碼蟒蛇我mpi4py的測試下方並不表明存在與從根讀取數據的問題不止一次。 import numpy as np from sharethewealth import sharethewealth comm = MPI.COMM_WORLD nprocs = comm.G

    1熱度

    1回答

    這是我的第一個Python MPI程序,我非常感謝一些優化代碼的幫助。具體來說,我有兩個關於分散和聚集的問題,如果任何人都可以幫忙。這個程序比沒有MPI的傳統方法慢得多。 我想分散一個數組,在填充另一組數組的節點上做一些工作,然後收集這些數組。我的問題主要在代碼的設置和收集部分。 是否有必要爲所有節點上的陣列分配內存? (A,my_A,xset,yset,my_xset, my_yset)?其中一

    1熱度

    1回答

    我正在學Python自己的MPI。我剛從MPI4py的基本文檔開始。我開始使用此代碼: from mpi4py import MPI comm = MPI.COMM_WORLD rank = comm.Get_rank() if rank == 0: data = {'a': 7, 'b': 3.14} comm.send(data, dest=1, tag=11)

    1熱度

    1回答

    我想用python使用mpi4py軟件包進行分佈式編程。出於測試原因,我通過Google容器引擎設置了5節點集羣,並相應地更改了我的代碼。但現在,我的下一步是什麼?如何讓我的代碼運行並在所有5個虛擬機上工作? 我試圖從我的集羣ssh連接到一個虛擬機並運行代碼,但很明顯代碼沒有得到分發,而是停留在同一臺機器上:([見下例] 。 代碼: from mpi4py import MPI size =