Skip to content

Commit

Permalink
Merge branch 'add_collapse_lgpu' into add_LGPUSIM
Browse files Browse the repository at this point in the history
  • Loading branch information
multiphaseCFD committed Oct 10, 2024
2 parents 7d82d15 + 0e9f1db commit f6b5202
Show file tree
Hide file tree
Showing 5 changed files with 8 additions and 12 deletions.
6 changes: 1 addition & 5 deletions mpitests/test_native_mcm.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,6 @@
from conftest import LightningDevice, device_name
from mpi4py import MPI

if device_name not in ("lightning.qubit", "lightning.kokkos", "lightning.gpu"):
pytest.skip("Native MCM not supported. Skipping.", allow_module_level=True)

if not LightningDevice._CPP_BINARY_AVAILABLE: # pylint: disable=protected-access
pytest.skip("No binary module found. Skipping.", allow_module_level=True)

Expand All @@ -41,7 +38,6 @@ def func(x, y):
comm.Barrier()

with pytest.raises(
qml.DeviceError,
match=f"LightningGPU-MPI does not support Mid-circuit measurements.",
qml.DeviceError, match="LightningGPU-MPI does not support Mid-circuit measurements."
):
func(*params)
2 changes: 1 addition & 1 deletion pennylane_lightning/core/_version.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,4 @@
Version number (major.minor.patch[-label])
"""

__version__ = "0.39.0-dev42"
__version__ = "0.39.0-dev43"
Original file line number Diff line number Diff line change
Expand Up @@ -355,7 +355,7 @@ class StateVectorCudaMPI final
collapse_local_(wireInt, branch);
} else {
// global wire
int local_wire = 0;
constexpr int local_wire = 0;
std::vector<int2> wirePairs{make_int2(wireInt, local_wire)};
applyMPI_Dispatcher(wirePairs, &StateVectorCudaMPI::collapse_local_,
local_wire, branch);
Expand Down Expand Up @@ -1680,12 +1680,12 @@ class StateVectorCudaMPI final
/* const int32_t * */ basisBits.data(),
/* const uint32_t nBasisBits */ basisBits.size()));

auto abs2sum0 = mpi_manager_.allreduce(abs2sum0_local, "sum");
auto abs2sum1 = mpi_manager_.allreduce(abs2sum1_local, "sum");
auto abs2sum0 = mpi_manager_.allreduce<double>(abs2sum0_local, "sum");
auto abs2sum1 = mpi_manager_.allreduce<double>(abs2sum1_local, "sum");

double norm = (branch == 0) ? abs2sum0 : abs2sum1;

int parity = branch;
const int parity = static_cast<int>(branch);

PL_CUSTATEVEC_IS_SUCCESS(custatevecCollapseOnZBasis(
/* custatevecHandle_t */ handle_.get(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -522,7 +522,7 @@ class StateVectorCudaManaged

double norm = (branch == 0) ? abs2sum0 : abs2sum1;

int parity = branch;
const int parity = static_cast<int>(branch);

PL_CUSTATEVEC_IS_SUCCESS(custatevecCollapseOnZBasis(
/* custatevecHandle_t */ handle_.get(),
Expand Down
2 changes: 1 addition & 1 deletion pennylane_lightning/lightning_gpu/lightning_gpu.py
Original file line number Diff line number Diff line change
Expand Up @@ -516,7 +516,7 @@ def simulate(
raise qml.DeviceError("LightningGPU-MPI does not support Mid-circuit measurements.")

results = []
aux_circ = qml.tape.QuantumScript(
aux_circ = QuantumScript(
circuit.operations,
circuit.measurements,
shots=[1],
Expand Down

0 comments on commit f6b5202

Please sign in to comment.