cost 329 ms
在fortran中使用MPI_PUT,不同rank有不同的位移使用c_loc

[英]Using MPI_PUT in fortran and different ranks have different displacements using c_loc

我將 MPI 等級拆分以計算數組的不同部分,然后我想將這些切片放入/發送到不參與計算的不同等級。 該等級是新通信器的主人,該通信器設置為對數組執行其他操作(平均、IO 等)。 我讓它與 MPI_isend 和 MPI_irecv 一起工作,現在我想嘗試 MPI_Put。 我有! if (.not ...

MPI_Fetch_and_op 的一致性

[英]Consistency of MPI_Fetch_and_op

我試圖通過一個小例子來理解 MPI-Function `MPI_Fetch_and_op() 並遇到了一個我想理解的奇怪行為。 在這個例子中,等級為 0 的進程會等待,直到進程 1..4 都將 result 的值都增加了 1,然后才能繼續。 在函數MPI_Win_lock_all()使用 ass ...

MPI:如何正確使用 MPI_Win_allocate_shared

[英]MPI: How to use MPI_Win_allocate_shared properly

我想在進程之間使用共享內存。 我試過 MPI_Win_allocate_shared 但是當我執行程序時它給了我一個奇怪的錯誤: 斷言在文件./src/mpid/ch3/include/mpid_rma_shm.h第 592 行中失敗: local_target_rank >= 0 inte ...

2016-05-14 00:24:07   2   3424    mpi / mpi-rma  
如何檢查MPI單面通信是否完成?

[英]How to check if MPI one-sided communication has finished?

我正在使用MPI_Raccumulate函數,該函數是使用預定義的聚合函數從源到目標的一種單面通信。 我想在程序結束時檢查所有MPI_Raccumulate調用是否都已完成(發送者發送了數據,接收者成功接收了數據)。 但是, MPI_Wait似乎不是解決此問題的方法; 它僅等待檢查源緩 ...

使用MPI_Put的異步有限差分格式

[英]Asynchronous Finite Difference Scheme using MPI_Put

Donzis&Aditya的一篇論文表明,有可能使用可能在模板上有延遲的有限差分方案。 這是什么意思? FD方案可能用於解決熱方程和讀取(或簡化它) 意思是,下一個時間步的值取決於同一位置的值及其前一時間步的鄰居。 通過將(在我們的示例中為1D)域分割到不同的處理器上,可以容易 ...

MPI-2單面通信同步單個int值時出現的問題

[英]issues in sychronizing a single int value with MPI-2 one sided communication

在學習MPI-2單面通信的一系列嘗試中,我正在測試以下代碼,在該代碼中,我將一個基本類型值(例如int在主進程中,並將其暴露給所有其他進程。 現在,我對整數的處理很簡單。 我讓每個進程迭代遞增它,直到共享整數達到最大值。 每個進程在打印出共享整數之前都會圍起來,如下所示(底部完整的代碼): ...

MPI-2單面通信同步中的訂單問題

[英]order issue in sychronizing MPI-2 one sided communication

我正在學習MPI-2,並嘗試使用MPI-2單面通信實現第一個簡單功能: 使進程0托管一個固定大小的data_size數組。 每個進程(包括0)將生成一個數組,並與主機數組進行比較: 如果生成的數組的第一個元素小於主機數組的元素,請用生成的數組替換主機數組。 在代碼中: ...

如何在MPI-2 +中復制MPI_Accumulate的功能

[英]How to replicate the function of MPI_Accumulate in MPI-2+

我正在學習MPI-2 / MPI-3中引入的MPI單面通信,並且遇到了關於MPI_Accumulate 在線課程頁面 : MPI_Accumulate允許調用者將移動到目標進程的數據與已存在的數據組合,例如在目標進程中累積和。 使用MPI_Get檢索數據(后跟同步)可以實現相同的功能 ...

MPI2 / MPI3:考慮同步的MPI_allgather vs MPI單面通信

[英]MPI2 / MPI3: MPI_allgather vs MPI one sided communication considering synchronization

我寫使用MPI-2的優化方案,其中我需要有一個std::vector相等的長度std::vector S(在概念上),所有進程之間共享。 該向量擁有當前發現問題的最佳k解,並且每次通過許多MPI流程之一找到新的最佳解時都會進行更新。 每個過程尋找新解決方案所花費的時間通常相差很大。 我 ...

從另一個處理器調用變量

[英]Calling a variable from another processor

我正在用Fortran77編寫並行程序。 我有以下問題: 我有N個處理器。 每個處理器包含大小為S的數組A。 使用某些函數,在每個處理器上(例如等級X),我計算兩個整數Y和Z的值,其中Z <S(每個處理器上Y和Z的值不同)。 我想獲取處理器Y到處理器X的 ...

在MPI中,鎖定標准輸出以獲取錯誤消息

[英]In MPI, lock stdout for error messages

當滿足錯誤條件時,我的程序可以在某些MPI等級上生成錯誤消息。 但是,有可能僅在某些(但不是全部)等級上滿足此條件。 我想從遇到錯誤情況的第一個等級輸出一條消息,並從其他等級中丟棄類似的消息。 如果我天真地這樣做(不丟掉消息),例如 我會在屏幕上獲得隨機排序的輸出。 我想 ...

MPI RMA為多維數組中的幻像單元創建窗口

[英]MPI RMA create windows for ghost cells in a multidimensional array

如果我有一個數組A [100] [100] [100],如何為六個邊緣子數組(重影單元)創建一個用於遠程內存訪問的窗口,尤其是對於A [0] [:] [:]和A [100] ] [:] [:]。 在MPI-1中,我創建矢量類型來發送/接收虛假單元格。 在MPI-2和-3中,我需要公開整個數組 ...

2013-11-07 19:05:51   1   221    mpi / mpi-rma  
使用MPI-2的RMA功能的Fortran程序中的分段錯誤

[英]Segmentation Fault in Fortran program using RMA functions of MPI-2

以下簡短的Fortran90程序只要包含MPI_GET調用便會崩潰。 等級1嘗試從等級0讀取值並掛在MPI_WIN_UNLOCK中。 等級0嘗試使用分段錯誤在MPI_BARRIER中崩潰。 我反復檢查了命令的語法,但它們似乎是正確的。 C / C ++中的類似代碼可在同一系統上工作。 ...

與MPI-2的單面通信

[英]Single-Sided communications with MPI-2

考慮以下OpenMP代碼片段,該片段使用中間共享變量在兩個線程之間傳輸私有數據 我將需要(使用偽代碼)使用單面消息傳遞庫將私有數據從一個進程轉移到另一個進程。 有任何想法嗎? ...

創建一個在MPI進程中保持同步的計數器

[英]Creating a counter that stays synchronized across MPI processes

我在使用基本通信和組MPI2方法方面有相當多的經驗,並且使用MPI進行了相當多的令人尷尬的並行仿真工作。 到目前為止,我已經構建了我的代碼,以便有一個調度節點和一堆工作節點。 調度節點具有將與模擬器一起運行的參數文件列表。 它使用參數文件為每個工作節點播種。 工作節點運行其模擬,然后請求 ...


 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM