Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add LGPU with single GPU backend #499

Merged
merged 127 commits into from
Oct 18, 2023
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
127 commits
Select commit Hold shift + click to select a range
15e42fd
add LGPU cpp layer
multiphaseCFD Sep 12, 2023
ece63c6
update measurement
multiphaseCFD Sep 13, 2023
9431ef6
add openmp to adjgpu
multiphaseCFD Sep 13, 2023
44237ea
Merge branch 'master' into add_LGPU
multiphaseCFD Sep 13, 2023
39d144e
Auto update version
github-actions[bot] Sep 13, 2023
832dc68
Add support for building multiple backend simulators (#497)
maliasadi Sep 13, 2023
5b2220d
add python layer & isingxy gate in the cpp layer
multiphaseCFD Sep 15, 2023
b10494b
add batched adjoint method
multiphaseCFD Sep 15, 2023
62ee28b
Update DefaultQubit to DefaultQubitLegacy (#500)
AmintorDusko Sep 15, 2023
d921b4f
Auto update version
github-actions[bot] Sep 15, 2023
cd06aa6
add batch support for adjoint method
multiphaseCFD Sep 16, 2023
38bfad3
add gitignore
multiphaseCFD Sep 16, 2023
516447f
tidy up code
multiphaseCFD Sep 16, 2023
8de101a
Merge branch 'master' into add_LGPU
multiphaseCFD Sep 16, 2023
c7d6012
Auto update version
github-actions[bot] Sep 16, 2023
6bcd87c
make format
multiphaseCFD Sep 16, 2023
c9cbdaa
revert complexT delete in LKokkosBingds
multiphaseCFD Sep 18, 2023
108e1fe
make format
multiphaseCFD Sep 18, 2023
d94fc0e
update based on tidy
multiphaseCFD Sep 18, 2023
ee914a2
fix tidy format
multiphaseCFD Sep 18, 2023
e1a9bb0
add_gpu_runners_tests
multiphaseCFD Sep 18, 2023
ce49548
add cuquantum_sdk path to ci workflow
multiphaseCFD Sep 18, 2023
a99363c
debug
multiphaseCFD Sep 18, 2023
ad4b938
add path to cuquantum sdk
multiphaseCFD Sep 18, 2023
78bab88
add python layer tests in ci workflow
multiphaseCFD Sep 18, 2023
3c9e9c0
ci tests
multiphaseCFD Sep 18, 2023
b805ec2
quick fix
multiphaseCFD Sep 18, 2023
08412c4
skip pr ci for some workflows
multiphaseCFD Sep 18, 2023
f0dc631
quick fix
multiphaseCFD Sep 18, 2023
9639b41
quick fix
multiphaseCFD Sep 18, 2023
ba3bf42
update python ci tests
multiphaseCFD Sep 18, 2023
083fdd7
remove dependency on lightning_qubit in ci
multiphaseCFD Sep 18, 2023
ed6ea62
fix directory
multiphaseCFD Sep 18, 2023
c3ad7aa
fix directory
multiphaseCFD Sep 18, 2023
e7afb36
quick fix
multiphaseCFD Sep 18, 2023
d35628e
quick fix
multiphaseCFD Sep 18, 2023
4a58c98
test for cuda-12
multiphaseCFD Sep 19, 2023
81fc5b9
update measurement
multiphaseCFD Sep 19, 2023
c3db409
Merge branch 'master' into add_LGPU
multiphaseCFD Sep 20, 2023
61ffa3d
updata cu12 workflows
multiphaseCFD Sep 20, 2023
e5c2c4b
add getDataVector support to LQubitRaw
multiphaseCFD Sep 21, 2023
2ba7e96
Merge branch 'master' into add_LGPU
multiphaseCFD Sep 21, 2023
23e154d
install lightning.qubit before lightning.gpu in ci
multiphaseCFD Sep 21, 2023
a1ca506
update test_obs
multiphaseCFD Sep 21, 2023
f52fe36
activate all CI checks
multiphaseCFD Sep 22, 2023
2cc0242
quick fix
multiphaseCFD Sep 22, 2023
d76ec44
tidy up code
multiphaseCFD Sep 22, 2023
d48351e
make format
multiphaseCFD Sep 22, 2023
4f4e1fa
update ci for more tests
multiphaseCFD Sep 22, 2023
3a45666
tidy up code
multiphaseCFD Sep 22, 2023
443aae5
tidy up code
multiphaseCFD Sep 22, 2023
e8ac990
tidy up code
multiphaseCFD Sep 22, 2023
74d3667
make format
multiphaseCFD Sep 22, 2023
3efeb1f
fix for codecov
multiphaseCFD Sep 22, 2023
ec393f4
codecov fix
multiphaseCFD Sep 22, 2023
f3f1a85
quick fix
multiphaseCFD Sep 22, 2023
4ff0c61
quick fix
multiphaseCFD Sep 22, 2023
34a05d9
quick fix
multiphaseCFD Sep 22, 2023
60b2a3d
quick test
multiphaseCFD Sep 22, 2023
9bbd2d4
fix test
multiphaseCFD Sep 22, 2023
d96d793
fix tests
multiphaseCFD Sep 22, 2023
a290364
another quick fix
multiphaseCFD Sep 22, 2023
41d90e3
coverage fix
multiphaseCFD Sep 22, 2023
1410fee
update ci tests
multiphaseCFD Sep 22, 2023
08c8453
update ci for no binary
multiphaseCFD Sep 22, 2023
394ceab
codecov fix
multiphaseCFD Sep 22, 2023
79a6c34
update adj tests for no binary case
multiphaseCFD Sep 22, 2023
2d238eb
update python layer tests
multiphaseCFD Sep 22, 2023
98db424
fix codecov
multiphaseCFD Sep 22, 2023
11fa5c2
make format
multiphaseCFD Sep 22, 2023
219cfde
revert to cu11
multiphaseCFD Sep 26, 2023
2530925
enable more py tests
multiphaseCFD Sep 27, 2023
314c06d
update CI
multiphaseCFD Sep 27, 2023
9b9fbbe
upload codecov ci
multiphaseCFD Sep 27, 2023
d1b05f9
add more tests for statevectorcudamanaged
multiphaseCFD Sep 27, 2023
9e3e834
add more unit tests
multiphaseCFD Sep 27, 2023
4d1ea37
add more tests
multiphaseCFD Sep 27, 2023
b54759e
make format
multiphaseCFD Sep 27, 2023
a27d1a1
add more cpp tests
multiphaseCFD Sep 27, 2023
d353a6e
skip cpp tests pauli param gates
multiphaseCFD Sep 27, 2023
cfd7f3b
make format
multiphaseCFD Sep 27, 2023
1fbad9f
add more files to gitignore
multiphaseCFD Sep 27, 2023
43c7e52
Merge branch 'master' into add_LGPU
multiphaseCFD Sep 27, 2023
893c61b
Auto update version
github-actions[bot] Sep 27, 2023
722cc28
Trigger CI
multiphaseCFD Oct 2, 2023
6f49902
update gpu runner
multiphaseCFD Oct 10, 2023
36ea421
quick fix
multiphaseCFD Oct 10, 2023
643d9b0
update fix
multiphaseCFD Oct 10, 2023
8044aad
fix for fp32 support in expval calculation
multiphaseCFD Oct 12, 2023
e099fc4
quick fix
multiphaseCFD Oct 12, 2023
38773b7
fix for cray_mpich_serialize_py
multiphaseCFD Oct 13, 2023
c8f9f1a
copy to move for hamiltonian operation
multiphaseCFD Oct 13, 2023
114438a
resolve comments py layer
multiphaseCFD Oct 13, 2023
7e825ce
remove omp support in LGPU
multiphaseCFD Oct 13, 2023
6efb5dc
Merge branch 'master' into add_LGPU
multiphaseCFD Oct 13, 2023
19f85e1
update version
multiphaseCFD Oct 13, 2023
b7ef71f
Auto update version
github-actions[bot] Oct 13, 2023
ade064d
fix based on comments
multiphaseCFD Oct 13, 2023
500a0c4
Add L-GPU and L-Kokkos as package extras (#515)
mlxd Oct 13, 2023
52d7293
Auto update version
github-actions[bot] Oct 13, 2023
f09db5f
Merge branch 'master' into add_LGPU
multiphaseCFD Oct 13, 2023
8888060
make format
multiphaseCFD Oct 13, 2023
6b503b7
remove sparseH
multiphaseCFD Oct 15, 2023
997515f
remove applyHostMatrixGate
multiphaseCFD Oct 15, 2023
c263264
Add wheel_linux_x86_64_cu11.yml (#517)
vincentmr Oct 16, 2023
e6d802c
resolve more comments
multiphaseCFD Oct 16, 2023
6d9c443
add more tests to non_param gates
multiphaseCFD Oct 16, 2023
3f6268c
resolve cpp tests comments
multiphaseCFD Oct 16, 2023
db04384
remove unused methods in measurement class
multiphaseCFD Oct 16, 2023
cba4849
remove unused methods
multiphaseCFD Oct 16, 2023
34e00d2
resolve more comments
multiphaseCFD Oct 17, 2023
61ba81a
add changelog and matrixhasher
multiphaseCFD Oct 17, 2023
5be027b
quick update
multiphaseCFD Oct 17, 2023
6bc75d7
tidy up code and add more tests
multiphaseCFD Oct 17, 2023
5f20309
add more unit tests for algorithm
multiphaseCFD Oct 17, 2023
76e5783
more unit tests in py layer
multiphaseCFD Oct 17, 2023
2a3dab9
add adjoint tests for sparseH
multiphaseCFD Oct 17, 2023
0974aa2
make format
multiphaseCFD Oct 17, 2023
72f07d1
quick fix
multiphaseCFD Oct 17, 2023
bc998fd
quick fix
multiphaseCFD Oct 17, 2023
967bea2
another fix
multiphaseCFD Oct 17, 2023
c26c109
fix
multiphaseCFD Oct 18, 2023
fb8a017
fix codecov complaints
multiphaseCFD Oct 18, 2023
16dd415
resolve comments
multiphaseCFD Oct 18, 2023
9c6e08f
add appropriate license
multiphaseCFD Oct 18, 2023
e867229
tidy up
multiphaseCFD Oct 18, 2023
25f0880
quick fix
multiphaseCFD Oct 18, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright 2022-2023 Xanadu Quantum Technologies Inc.

// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at

// http://www.apache.org/licenses/LICENSE-2.0

// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

#pragma once

#include "DevTag.hpp"
Expand Down Expand Up @@ -159,7 +173,7 @@
"Sizes do not match for GPU data. Please ensure the source "
"buffer is not larger than the destination buffer");
if (async) {
PL_CUDA_IS_SUCCESS(cudaMemcpyAsync(

Check warning on line 176 in pennylane_lightning/core/src/simulators/lightning_gpu/utils/DataBuffer.hpp

View check run for this annotation

Codecov / codecov/patch

pennylane_lightning/core/src/simulators/lightning_gpu/utils/DataBuffer.hpp#L176

Added line #L176 was not covered by tests
multiphaseCFD marked this conversation as resolved.
Show resolved Hide resolved
getData(), gpu_in, sizeof(GPUDataT) * getLength(),
cudaMemcpyDeviceToDevice, getStream()));
} else {
Expand Down Expand Up @@ -189,7 +203,7 @@
"Sizes do not match for host & GPU data. Please ensure the source "
"buffer is not larger than the destination buffer");
if (async) {
PL_CUDA_IS_SUCCESS(cudaMemcpyAsync(

Check warning on line 206 in pennylane_lightning/core/src/simulators/lightning_gpu/utils/DataBuffer.hpp

View check run for this annotation

Codecov / codecov/patch

pennylane_lightning/core/src/simulators/lightning_gpu/utils/DataBuffer.hpp#L206

Added line #L206 was not covered by tests
getData(), host_in, sizeof(GPUDataT) * getLength(),
cudaMemcpyHostToDevice, getStream()));
} else {
Expand All @@ -215,7 +229,7 @@
sizeof(GPUDataT) * getLength(),
cudaMemcpyDefault));
} else {
PL_CUDA_IS_SUCCESS(cudaMemcpyAsync(

Check warning on line 232 in pennylane_lightning/core/src/simulators/lightning_gpu/utils/DataBuffer.hpp

View check run for this annotation

Codecov / codecov/patch

pennylane_lightning/core/src/simulators/lightning_gpu/utils/DataBuffer.hpp#L232

Added line #L232 was not covered by tests
host_out, getData(), sizeof(GPUDataT) * getLength(),
cudaMemcpyDeviceToHost, getStream()));
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright 2022-2023 Xanadu Quantum Technologies Inc.

// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at

// http://www.apache.org/licenses/LICENSE-2.0

// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

#pragma once

#include "cuError.hpp"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright 2022-2023 Xanadu Quantum Technologies Inc.

// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at

// http://www.apache.org/licenses/LICENSE-2.0

// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

#pragma once

#include "cuda.h"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
// Copyright 2022-2023 Xanadu Quantum Technologies Inc. and contributors.

// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at

// http://www.apache.org/licenses/LICENSE-2.0

// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

#pragma once

#include <functional>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,4 @@

// Adapted from JET: https://github.com/XanaduAI/jet.git
// and from Lightning: https://github.com/PennylaneAI/pennylane-lightning.git

// Copyright 2022-2023 Xanadu Quantum Technologies Inc. and contributors.
// Copyright 2022-2023 Xanadu Quantum Technologies Inc.

// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand All @@ -15,8 +11,11 @@
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// Adapted from JET: https://github.com/XanaduAI/jet.git
// and from Lightning: https://github.com/PennylaneAI/pennylane-lightning.git
/**
* @file cuda_helpers.hpp
* @file cuError.hpp
*/

#pragma once
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
// Adapted from JET: https://github.com/XanaduAI/jet.git
// and from Lightning: https://github.com/PennylaneAI/pennylane-lightning.git

// Copyright 2022-2023 Xanadu Quantum Technologies Inc. and contributors.
// Copyright 2022-2023 Xanadu Quantum Technologies Inc.

// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
Expand All @@ -14,6 +11,9 @@
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// Adapted from JET: https://github.com/XanaduAI/jet.git
// and from Lightning: https://github.com/PennylaneAI/pennylane-lightning.git
/**
multiphaseCFD marked this conversation as resolved.
Show resolved Hide resolved
* @file cuda_helpers.hpp
*/
Expand Down
Loading