QNLP
v1.0
simple_MPI.py
Go to the documentation of this file.
1
#!/usr/bin/env python
2
# coding: utf-8
3
4
from
mpi4py
import
MPI
5
6
from
PyQNLPSimulator
import
PyQNLPSimulator
as
p
7
import
QNLP
as
q
8
import
numpy
as
np
9
10
num_qubits = 24
11
12
# Create simulator object
13
14
use_fusion =
False
15
16
sim = p(num_qubits, use_fusion)
17
sim.initRegister()
18
19
comm = MPI.COMM_WORLD
20
rank = comm.Get_rank()
21
val = 0
22
23
sim.applyGateX(0)
24
sim.applyGateH(2)
25
sim.applyGateH(4)
26
sim.applyGateX(7)
27
sim.applyGateX(22)
28
29
val = sim.applyMeasurementToRegister(range(num_qubits),
True
)
30
print(
"RANK={} VAL={}"
.format(rank,val))
31
32
comm.Barrier()
33
34
"""
35
# Note, performing operations on rank=0 only will causes failures. The following example will fail.
36
if rank == 0:
37
sim.initRegister()
38
val = sim.applyMeasurementToRegister(range(num_qubits), True)
39
print(val)
40
"""
intel-qnlp-rc2
modules
py
scripts
simple_MPI.py
Generated by
1.8.15