mpi4py

    1熱度

    1回答

    我在根進程中有一個計數器對象,我想將它分散到組中的所有進程,但分散函數給出了錯誤(我也嘗試過使用Scatter()但沒有運氣) 。我正在使用mpi4py進行並行處理。 Traceback (most recent call last): File "tsetscatter.py", line 13, in <module> total_counter = comm.scatter(total_

    0熱度

    1回答

    請參考下面的收集代碼: from mpi4py import MPI comm = MPI.COMM.WORLD size = comm.Get_size() rank = comm.Get_rank() stat = MPI.Status() message = (rank)**2 print "Before Gather ",rank, message message =

    1熱度

    1回答

    我有一個mpi4py程序掛起間歇。我如何追蹤個別流程正在做什麼? 我可以在不同的終端使用pdb mpiexec -n 4 xterm -e "python -m pdb my_program.py" 運行程序,例如但這變得繁瑣的問題是否只用了大量的過程(〜80在我的情況)表現。另外,通過pdb很容易發現異常,但我需要查看跟蹤來確定發生掛起的位置。

    0熱度

    1回答

    我justed開始學習的Ruby代碼,並打了我的第一個劇本給劃破了。這個想法是把英文字母翻譯成莫爾斯電碼。 我已經建立了我的信及其相應的值的哈希: morse_code = { 'a' => '.-', 'b' => '-...', etc etc 我用下面通過哈希迭代和拉基於輸入然後輸出相應的值是: print "What would you like to translate: "

    0熱度

    2回答

    我在mpi4py執行該程序的麻煩。我的目標是將特定數據發送到特定節點(這就是爲什麼我不使用分散)。之後,處理每個節點中的數據,最後收集所有結果。 很顯然,我的程序不明白如何收集數據,從不同的節點(也許是因爲收集的設計與分散的工作)。我試着用comm.send()發送日期,並用comm.gather()進行收集。當我執行程序時,它會永遠運行,而我看不到任何結果。 你能幫我找出如何從不同的節點收集的數

    1熱度

    1回答

    我有一個Python應用程序,需要加載相同的大 陣列(〜4 GB),並做一個完美的並行功能 該陣列的塊。該陣列開始保存到磁盤。 我通常與 類似,比方說,10個節點,每個節點都具有8個 計算核心和大約32GB總RAM運行集羣計算機上此應用程序。 最簡單的方法(不起作用)是做 n = 80 mpi4py。它不起作用的原因是每個MPI內核都會加載4GB的地圖,這將耗盡 的32GB內存,導致MemoryE

    0熱度

    1回答

    要做一些練習以更熟悉MPI,我在Windows 10機器上安裝了MS-MPI,然後安裝了mpi4py(python MPI)。我嘗試了程序hello_world代碼: from mpi4py import MPI def main(): comm = MPI. COMM_WORLD rank = comm . Get_rank() size = comm . Ge

    0熱度

    1回答

    我正在實現一個工作流程,該工作流程的一部分是調用一個python腳本,並在該python腳本中讓每個級別運行一個可執行文件或python程序。 所以要測試我寫了一個簡單的程序,但它不能正常工作。下面的代碼描述: helloworld.py from mpi4py import MPI import sys import subprocess mpi_warn_on_fork = 0 s

    0熱度

    1回答

    我試圖讓使用共享文件從mpi4py爲logging模塊文件處理程序。但我無法寫出來。 程序: from mpi4py import MPI import io class MPILogFile(object): def __init__(self, comm, filename, mode): self.file_handle = MPI.File.Open(comm,

    0熱度

    1回答

    我想測試一個簡單的MPI代碼,在蟒蛇用下面的代碼: from scipy.sparse import csr_matrix from mpi4py import MPI comm=MPI.COMM_WORLD rank=comm.Get_rank() size=comm.Get_size() if rank == 0: data = [1, 2, 3, 4, 5]