source:
CIVL/examples/messagePassing/ring.cvl@
e51fd2f
| Last change on this file since e51fd2f was 6cc497b, checked in by , 12 years ago | |
|---|---|
|
|
| File size: 384 bytes | |
| Line | |
|---|---|
| 1 | /* Create nprocs processes. Have them exchange data in a cycle. |
| 2 | * Commandline example: |
| 3 | * civl verify -inputNPROCS=3 ring.cvl -simplify=false |
| 4 | */ |
| 5 | #include<civlc.h> |
| 6 | #include "mp_root.cvh" |
| 7 | |
| 8 | void MPI_Process (int rank) { |
| 9 | #include "mp_proc.cvh" |
| 10 | |
| 11 | double x=rank, y; |
| 12 | send(&x, 1, (rank+1)%NPROCS, 0); |
| 13 | recv(&y, 1, (rank+NPROCS-1)%NPROCS, 0); |
| 14 | $assert y==(rank+NPROCS-1)%NPROCS; |
| 15 | } |
Note:
See TracBrowser
for help on using the repository browser.
