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

Creating the LightningTensor device class based on the new API #671

Merged
merged 107 commits into from
Apr 29, 2024
Merged
Show file tree
Hide file tree
Changes from 106 commits
Commits
Show all changes
107 commits
Select commit Hold shift + click to select a range
06f1285
empty commit (triggering CI)
PietropaoloFrisoni Apr 3, 2024
6ffe0be
Auto update version
github-actions[bot] Apr 3, 2024
95d2bf7
Definition of the two front-end classes
PietropaoloFrisoni Apr 3, 2024
3a35a09
adding the `lightning_tensor` string to the supported backends in `se…
PietropaoloFrisoni Apr 3, 2024
568df4c
adding `__init__.py` file to directly import the `lightning_tensor` d…
PietropaoloFrisoni Apr 4, 2024
ac3a397
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 4, 2024
2fcf200
re-naming file
PietropaoloFrisoni Apr 4, 2024
2a6cabd
Auto update version
github-actions[bot] Apr 4, 2024
f3b8e8f
Creating the first prototype of initial MPS state tensor using `quimb`
PietropaoloFrisoni Apr 4, 2024
98891cb
providing the `backend`, `method` parameters and making `wires` optional
PietropaoloFrisoni Apr 5, 2024
9f3c094
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 8, 2024
a63241e
Changing names and structure
PietropaoloFrisoni Apr 8, 2024
10e5d22
Auto update version
github-actions[bot] Apr 8, 2024
68f4296
adding method required by the new device API design
PietropaoloFrisoni Apr 9, 2024
f78c2f8
Auto update version
github-actions[bot] Apr 9, 2024
f5ba10f
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 9, 2024
5f64582
using the `kwargs` parameter in `LightningTensor` and `CircuitMPS` in…
PietropaoloFrisoni Apr 9, 2024
621082c
taking some further inputs from the new device API
PietropaoloFrisoni Apr 9, 2024
6395940
Perhaps decided the overall structure of `LIghtningTensor`
PietropaoloFrisoni Apr 10, 2024
8de1a46
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 10, 2024
3e89306
Auto update version
github-actions[bot] Apr 10, 2024
9510eb2
adding docs to methods
PietropaoloFrisoni Apr 10, 2024
a16f7de
temporary changes so that `pylint` does not complain at this stage
PietropaoloFrisoni Apr 10, 2024
295aee7
running `isort`
PietropaoloFrisoni Apr 10, 2024
710dffd
re-running formatter after `isort`
PietropaoloFrisoni Apr 10, 2024
870e0e4
re-running formatter after `isort`
PietropaoloFrisoni Apr 10, 2024
34b23a9
Applying suggested formatting change from CI
PietropaoloFrisoni Apr 10, 2024
f5eb35a
adding tmp unit tests
PietropaoloFrisoni Apr 10, 2024
95839b9
Adding `quimb` in `requirements.txt`
PietropaoloFrisoni Apr 10, 2024
72a54d4
runing `isort` on mps test
PietropaoloFrisoni Apr 10, 2024
a235592
removing `quimb` from requirement and deleting unit tests for `lightn…
PietropaoloFrisoni Apr 10, 2024
6d7d879
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 10, 2024
4139412
Auto update version
github-actions[bot] Apr 10, 2024
b0a55b3
re-inserting unit tests with an additional `yml` file
PietropaoloFrisoni Apr 10, 2024
ed1ba39
running isort on quimb test
PietropaoloFrisoni Apr 10, 2024
6da1c94
changing name of yml file
PietropaoloFrisoni Apr 10, 2024
54d430d
preventing error in import
PietropaoloFrisoni Apr 10, 2024
943af7b
updating yml file
PietropaoloFrisoni Apr 10, 2024
9c6d5e6
inserting `quimb` package in requirements-dev
PietropaoloFrisoni Apr 10, 2024
a7e7327
strange error with `quimb`
PietropaoloFrisoni Apr 10, 2024
73428a6
strange error with `quimb`
PietropaoloFrisoni Apr 10, 2024
9729440
specifying scipy version
PietropaoloFrisoni Apr 10, 2024
1d0bce7
removing installation of scipy from yml file
PietropaoloFrisoni Apr 10, 2024
2a4b1cd
removing the new `yml` file
PietropaoloFrisoni Apr 10, 2024
706dc93
testing if tests are tested
PietropaoloFrisoni Apr 10, 2024
b5c0a63
Covering all lines in tests
PietropaoloFrisoni Apr 10, 2024
50928ad
forgot final line for formatter
PietropaoloFrisoni Apr 10, 2024
1ed59a3
Python formatter on CI complaints
PietropaoloFrisoni Apr 10, 2024
8108cfd
covering missing lines
PietropaoloFrisoni Apr 10, 2024
c9c3cb2
formatter on CI complaints
PietropaoloFrisoni Apr 10, 2024
69f9ce0
Trying not to skip test if Cpp is enabled
PietropaoloFrisoni Apr 10, 2024
159418b
skipping tests if Cpp is enabled
PietropaoloFrisoni Apr 11, 2024
8789d5c
removing the only line not covered by tests so far
PietropaoloFrisoni Apr 11, 2024
a033eac
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 12, 2024
2df5486
Auto update version
github-actions[bot] Apr 12, 2024
b470af1
Applying suggestions from code review and making the `state` attribut…
PietropaoloFrisoni Apr 12, 2024
754dae1
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 12, 2024
eb348b3
Python formatter
PietropaoloFrisoni Apr 12, 2024
cdc585b
Merge branch 'lightning-tensor-device' of https://github.com/PennyLan…
PietropaoloFrisoni Apr 12, 2024
f9dc84e
removing params from `QuimbMPS`
PietropaoloFrisoni Apr 12, 2024
651730d
Auto update version
github-actions[bot] Apr 12, 2024
eb84ded
removing `**kwargs` from `QuimbMPS`
PietropaoloFrisoni Apr 12, 2024
36effb4
Merge branch 'lightning-tensor-device' of https://github.com/PennyLan…
PietropaoloFrisoni Apr 12, 2024
3925d37
removing unnecessary param at this stage
PietropaoloFrisoni Apr 12, 2024
da0518b
covering test line
PietropaoloFrisoni Apr 12, 2024
df2350d
formatter...
PietropaoloFrisoni Apr 12, 2024
017a924
removing param description
PietropaoloFrisoni Apr 15, 2024
ba89c13
Making `pylint` happy
PietropaoloFrisoni Apr 15, 2024
505e54a
forgot new arg in test
PietropaoloFrisoni Apr 15, 2024
c0a9df9
Updating base class and `preprocess` function
PietropaoloFrisoni Apr 16, 2024
364ff80
Updating `LightningTensor` class with new names from more advanced PR
PietropaoloFrisoni Apr 16, 2024
1629675
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 17, 2024
aebfd13
Auto update version
github-actions[bot] Apr 17, 2024
f3c5f40
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 17, 2024
6333163
Auto update version
github-actions[bot] Apr 17, 2024
dd60aa9
Triggering CI
PietropaoloFrisoni Apr 17, 2024
f62400d
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 17, 2024
b419e86
Auto update version
github-actions[bot] Apr 17, 2024
74c6562
Trying to remove pin from `quimb` in `requirements.dev`
PietropaoloFrisoni Apr 18, 2024
cad8e60
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 19, 2024
d13d373
Auto update version
github-actions[bot] Apr 19, 2024
5286592
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 19, 2024
5487b57
Auto update version
github-actions[bot] Apr 19, 2024
5e47874
Removing infos on derivatives and using config options to pass parame…
PietropaoloFrisoni Apr 19, 2024
6945ae7
Merge branch 'lightning-tensor-device' of https://github.com/PennyLan…
PietropaoloFrisoni Apr 19, 2024
804df34
Usual `pylint` failures
PietropaoloFrisoni Apr 19, 2024
b1fbe3e
Trying to solve formatting errors
PietropaoloFrisoni Apr 19, 2024
9dcff51
typo in docstring
PietropaoloFrisoni Apr 19, 2024
50fa0e1
Sunday update: improved docstrings and structure
PietropaoloFrisoni Apr 21, 2024
0d4c870
Removing method that was supposed to be in next PR
PietropaoloFrisoni Apr 21, 2024
e08afb0
removing old TODO comment
PietropaoloFrisoni Apr 21, 2024
eaa6e8d
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 22, 2024
e3ed59f
Removing changes from the `setup.py` file
PietropaoloFrisoni Apr 22, 2024
11fae6d
restoring previous format to `setup.py`
PietropaoloFrisoni Apr 22, 2024
9c3d630
Auto update version from '0.36.0-dev34' to '0.36.0-dev41'
ringo-but-quantum Apr 25, 2024
2bff970
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 25, 2024
2e91195
Auto update version from '0.36.0-dev40' to '0.36.0-dev41'
ringo-but-quantum Apr 25, 2024
149d126
Removing kwargs as suggested from code review
PietropaoloFrisoni Apr 25, 2024
9ef5625
Addressing comments from CR
PietropaoloFrisoni Apr 25, 2024
6a894ca
Skipping tests if CPP binary is available
PietropaoloFrisoni Apr 25, 2024
bb5f7f0
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 25, 2024
5981e98
Auto update version from '0.36.0-dev42' to '0.36.0-dev43'
ringo-but-quantum Apr 25, 2024
458afbe
Merge branch 'master' into lightning-tensor-device
PietropaoloFrisoni Apr 26, 2024
aa1f658
Auto update version from '0.36.0-dev43' to '0.36.0-dev44'
ringo-but-quantum Apr 26, 2024
54ebe91
Restoring name in changelog (?)
PietropaoloFrisoni Apr 26, 2024
fd82258
Increasing time limit for Python tests
PietropaoloFrisoni Apr 29, 2024
13d1c11
Applying suggestions from code review
PietropaoloFrisoni Apr 29, 2024
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
5 changes: 4 additions & 1 deletion .github/CHANGELOG.md
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This changelog would be better placed in Release 0.37.0-dev.
Let's come back later and fix that.

Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@

### New features since last release

* Add Python class for the `lightning.tensor` device which uses the new device API and the interface for `quimb` based on the MPS method.
[(#671)](https://github.com/PennyLaneAI/pennylane-lightning/pull/671)

* Add compile-time support for AVX2/512 streaming operations in `lightning.qubit`.
[(#664)](https://github.com/PennyLaneAI/pennylane-lightning/pull/664)

Expand Down Expand Up @@ -133,7 +136,7 @@

This release contains contributions from (in alphabetical order):

Ali Asadi, Amintor Dusko, Christina Lee, Vincent Michaud-Rioux, Lee James O'Riordan, Mudit Pandey, Shuli Shu
Ali Asadi, Amintor Dusko, Pietropaolo Frisoni, Christina Lee, Vincent Michaud-Rioux, Lee James O'Riordan, Mudit Pandey, Shuli Shu

---

Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/tests_linux_python.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ jobs:
matrix:
os: [ubuntu-22.04]
pl_backend: ["lightning_qubit"]
timeout-minutes: 60
timeout-minutes: 75
mlxd marked this conversation as resolved.
Show resolved Hide resolved
name: Python tests
runs-on: ${{ matrix.os }}

Expand Down Expand Up @@ -144,7 +144,7 @@ jobs:
matrix:
os: [ubuntu-22.04]
pl_backend: ["lightning_qubit"]
timeout-minutes: 60
timeout-minutes: 75
name: Python tests with OpenBLAS
runs-on: ${{ matrix.os }}

Expand Down Expand Up @@ -257,7 +257,7 @@ jobs:
exclude:
- pl_backend: ["all"]
exec_model: OPENMP
timeout-minutes: 60
timeout-minutes: 75
name: Python tests with Kokkos
runs-on: ${{ matrix.os }}

Expand Down
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.36.0-dev43"
__version__ = "0.36.0-dev44"
18 changes: 18 additions & 0 deletions pennylane_lightning/lightning_tensor/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Copyright 2018-2024 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.
"""PennyLane lightning_tensor package."""

from pennylane_lightning.core import __version__

from .lightning_tensor import LightningTensor
Loading
Loading