回答編集履歴

1

edit

2018/03/06 12:09

投稿

mkgrei
mkgrei

スコア8560

test CHANGED
@@ -1 +1,55 @@
1
1
  pythonインタプリタで`import mpi4py`はできますか?
2
+
3
+
4
+
5
+ ---
6
+
7
+
8
+
9
+ 以下のコードがを`bench.py`と名付けて、`mpirun -n 4 python bench.py `してみてください。
10
+
11
+ ```python
12
+
13
+ import sys as _sys
14
+
15
+ from mpi4py import MPI
16
+
17
+
18
+
19
+ def helloworld():
20
+
21
+ comm = MPI.COMM_WORLD
22
+
23
+ size = comm.Get_size()
24
+
25
+ rank = comm.Get_rank()
26
+
27
+ name = MPI.Get_processor_name()
28
+
29
+ message = ("Hello, World! I am process %*d of %d on %s.\n"
30
+
31
+ % (len(str(size - 1)), rank, size, name))
32
+
33
+ comm.Barrier()
34
+
35
+ if rank > 0:
36
+
37
+ comm.Recv([None, 'B'], rank - 1)
38
+
39
+ if True:
40
+
41
+ _sys.stdout.write(message)
42
+
43
+ _sys.stdout.flush()
44
+
45
+ if rank < size - 1:
46
+
47
+ comm.Send([None, 'B'], rank + 1)
48
+
49
+ comm.Barrier()
50
+
51
+
52
+
53
+ helloworld()
54
+
55
+ ```