-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
Remove pulse defaults for old fake 20q backends #8665
Conversation
The pulse defaults payload for the almaden, johannesburg, and singapore fake backends are collectively taking up > 50% of the total disk footprint of an installed copy of Qiskit. This is because the pusle defaults for these backends predate the use the of parameterized pulse definitions and contain arrays of sampled waveforms for the pulse definitions. This exceedingly large file size slows down the entire package and and makes it slower to install. When weighing the potential value these defaults files provide for simulating and compiling with pulse awareness for long retired devices against the real cost of having the files included in the package there isn't a reason to keep the files in the tree any longer. This commit removes the pulse defaults files for these fake backends to greatly shrink the installed package size of qiskit-terra.
Thank you for opening a new pull request. Before your PR can be merged it will first need to pass continuous integration tests and be reviewed. Sometimes the review process can be slow, so please be patient. While you're waiting, please feel free to review other open PRs. While only a subset of people are authorized to approve pull requests for merging, everyone is encouraged to review open pull requests. Doing reviews helps reduce the burden on the core team and helps make the project's code better for everyone. One or more of the the following people are requested to review this:
|
releasenotes/notes/remove-pulse-defs-old-20q-4ed46085b4a15678.yaml
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Absolutely fine by me to get rid of these. They're not so heavy for the download of the wheels (due to the compression), but it just seems like good bookkeeping to clear out cruft from devices that have been offline for however long.
Some of the tests explicitly use the Almaden, Johannesburg and Singapore fakes in part because they had pulse defaults - those will need changing over. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm also fine with removing them. These pulse data could be used for pulse simulation, but Hamiltonian parameters in configuration are usually off from calibration and useless apart from testing of the visualization module (because we don't update Hamiltonian with calibrations).
Several tests and docs were relying on the pulse data being present in the fake backends. This commit updates the tests and docs to avoid this and either rely on different fake backends that use parametric pulses or not rely on a fake backend at all. In one case a bug is fixed the assembler which was causing the tests to incorrectly pass because the use of pulse backends without parametric pulses was masking incorrect behavior.
9ac25a9
ok, I've updated the tests to no longer rely on these backends having pulse defaults present. Hopefully things will pass now (this also caught a bug in the assembler which was masked by the use of the old backends). |
Pull Request Test Coverage Report for Build 3148486327
💛 - Coveralls |
In Qiskit/qiskit#8665 very large pulse properties for long retired 20q backends are removed to save disk space and reduce overhead. However the pulse gates tutorial was still relying on these fake backends having pulse properties. This commit updates the tutorial to use a different backend to unblock that PR. Additionally, the deprecate import statements used in the tutorial are updated to avoid the deprecation warning.
The tutorials failure should be fixed once: Qiskit/qiskit-tutorials#1356 merges |
In Qiskit/qiskit#8665 very large pulse properties for long retired 20q backends are removed to save disk space and reduce overhead. However the pulse gates tutorial was still relying on these fake backends having pulse properties. This commit updates the tutorial to use a different backend to unblock that PR. Additionally, the deprecate import statements used in the tutorial are updated to avoid the deprecation warning. We previously updated one tutorial in Qiskit#1356 however there were more uses of FakeAlmaden in other tutorials so things were still blocked. This commit updates all the other uses of FakeAlmaden to use a provider that will have pulse properties moving forward.
* Update more pulse gate tutorial for changes in fake backends In Qiskit/qiskit#8665 very large pulse properties for long retired 20q backends are removed to save disk space and reduce overhead. However the pulse gates tutorial was still relying on these fake backends having pulse properties. This commit updates the tutorial to use a different backend to unblock that PR. Additionally, the deprecate import statements used in the tutorial are updated to avoid the deprecation warning. We previously updated one tutorial in #1356 however there were more uses of FakeAlmaden in other tutorials so things were still blocked. This commit updates all the other uses of FakeAlmaden to use a provider that will have pulse properties moving forward. * Update tutorials/circuits_advanced/08_gathering_system_information.ipynb Co-authored-by: Luciano Bello <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me - the diff looks cleaner without the +1,800 file as well! I'm never very sure if we should be making assertions about the exact forms of those giant reprs anyway.
releasenotes/notes/remove-pulse-defs-old-20q-4ed46085b4a15678.yaml
Outdated
Show resolved
Hide resolved
Heh, that took me longer to track down than I care to admit. My default editor config was changing the whitespace and I thought I somehow broke the output as part of the unrelated change which is why I changed the backend and added that file. But once I figured out what I did wrong it was easy to fix. |
…1358) * Update more pulse gate tutorial for changes in fake backends In Qiskit/qiskit#8665 very large pulse properties for long retired 20q backends are removed to save disk space and reduce overhead. However the pulse gates tutorial was still relying on these fake backends having pulse properties. This commit updates the tutorial to use a different backend to unblock that PR. Additionally, the deprecate import statements used in the tutorial are updated to avoid the deprecation warning. We previously updated one tutorial in Qiskit#1356 however there were more uses of FakeAlmaden in other tutorials so things were still blocked. This commit updates all the other uses of FakeAlmaden to use a provider that will have pulse properties moving forward. * Update tutorials/circuits_advanced/08_gathering_system_information.ipynb Co-authored-by: Luciano Bello <[email protected]>
In Qiskit/qiskit#8665 very large pulse properties for long retired 20q backends are removed to save disk space and reduce overhead. However the pulse gates tutorial was still relying on these fake backends having pulse properties. This commit updates the tutorial to use a different backend to unblock that PR. Additionally, the deprecate import statements used in the tutorial are updated to avoid the deprecation warning.
In Qiskit#8665 very large pulse properties for long retired 20q backends are removed to save disk space and reduce overhead. However the pulse gates tutorial was still relying on these fake backends having pulse properties. This commit updates the tutorial to use a different backend to unblock that PR. Additionally, the deprecate import statements used in the tutorial are updated to avoid the deprecation warning.
…qiskit-tutorials#1358) * Update more pulse gate tutorial for changes in fake backends In Qiskit#8665 very large pulse properties for long retired 20q backends are removed to save disk space and reduce overhead. However the pulse gates tutorial was still relying on these fake backends having pulse properties. This commit updates the tutorial to use a different backend to unblock that PR. Additionally, the deprecate import statements used in the tutorial are updated to avoid the deprecation warning. We previously updated one tutorial in Qiskit/qiskit-tutorials#1356 however there were more uses of FakeAlmaden in other tutorials so things were still blocked. This commit updates all the other uses of FakeAlmaden to use a provider that will have pulse properties moving forward. * Update tutorials/circuits_advanced/08_gathering_system_information.ipynb Co-authored-by: Luciano Bello <[email protected]>
In Qiskit#8665 very large pulse properties for long retired 20q backends are removed to save disk space and reduce overhead. However the pulse gates tutorial was still relying on these fake backends having pulse properties. This commit updates the tutorial to use a different backend to unblock that PR. Additionally, the deprecate import statements used in the tutorial are updated to avoid the deprecation warning.
…qiskit-tutorials#1358) * Update more pulse gate tutorial for changes in fake backends In Qiskit#8665 very large pulse properties for long retired 20q backends are removed to save disk space and reduce overhead. However the pulse gates tutorial was still relying on these fake backends having pulse properties. This commit updates the tutorial to use a different backend to unblock that PR. Additionally, the deprecate import statements used in the tutorial are updated to avoid the deprecation warning. We previously updated one tutorial in Qiskit/qiskit-tutorials#1356 however there were more uses of FakeAlmaden in other tutorials so things were still blocked. This commit updates all the other uses of FakeAlmaden to use a provider that will have pulse properties moving forward. * Update tutorials/circuits_advanced/08_gathering_system_information.ipynb Co-authored-by: Luciano Bello <[email protected]>
* Remove pulse defaults for old fake 20q backends The pulse defaults payload for the almaden, johannesburg, and singapore fake backends are collectively taking up > 50% of the total disk footprint of an installed copy of Qiskit. This is because the pusle defaults for these backends predate the use the of parameterized pulse definitions and contain arrays of sampled waveforms for the pulse definitions. This exceedingly large file size slows down the entire package and and makes it slower to install. When weighing the potential value these defaults files provide for simulating and compiling with pulse awareness for long retired devices against the real cost of having the files included in the package there isn't a reason to keep the files in the tree any longer. This commit removes the pulse defaults files for these fake backends to greatly shrink the installed package size of qiskit-terra. * Update releasenotes/notes/remove-pulse-defs-old-20q-4ed46085b4a15678.yaml * Update tests and docs Several tests and docs were relying on the pulse data being present in the fake backends. This commit updates the tests and docs to avoid this and either rely on different fake backends that use parametric pulses or not rely on a fake backend at all. In one case a bug is fixed the assembler which was causing the tests to incorrectly pass because the use of pulse backends without parametric pulses was masking incorrect behavior. * Revert passmanager config string test changes * Remove self.maxDiff in str test * Fix missing backtick Co-authored-by: Jake Lishman <[email protected]> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
In Qiskit/qiskit#8665 very large pulse properties for long retired 20q backends are removed to save disk space and reduce overhead. However the pulse gates tutorial was still relying on these fake backends having pulse properties. This commit updates the tutorial to use a different backend to unblock that PR. Additionally, the deprecate import statements used in the tutorial are updated to avoid the deprecation warning.
…qiskit-tutorials#1358) * Update more pulse gate tutorial for changes in fake backends In Qiskit/qiskit#8665 very large pulse properties for long retired 20q backends are removed to save disk space and reduce overhead. However the pulse gates tutorial was still relying on these fake backends having pulse properties. This commit updates the tutorial to use a different backend to unblock that PR. Additionally, the deprecate import statements used in the tutorial are updated to avoid the deprecation warning. We previously updated one tutorial in Qiskit/qiskit-tutorials#1356 however there were more uses of FakeAlmaden in other tutorials so things were still blocked. This commit updates all the other uses of FakeAlmaden to use a provider that will have pulse properties moving forward. * Update tutorials/circuits_advanced/08_gathering_system_information.ipynb Co-authored-by: Luciano Bello <[email protected]>
In Qiskit/qiskit#8665 very large pulse properties for long retired 20q backends are removed to save disk space and reduce overhead. However the pulse gates tutorial was still relying on these fake backends having pulse properties. This commit updates the tutorial to use a different backend to unblock that PR. Additionally, the deprecate import statements used in the tutorial are updated to avoid the deprecation warning.
…qiskit-tutorials#1358) * Update more pulse gate tutorial for changes in fake backends In Qiskit/qiskit#8665 very large pulse properties for long retired 20q backends are removed to save disk space and reduce overhead. However the pulse gates tutorial was still relying on these fake backends having pulse properties. This commit updates the tutorial to use a different backend to unblock that PR. Additionally, the deprecate import statements used in the tutorial are updated to avoid the deprecation warning. We previously updated one tutorial in Qiskit/qiskit-tutorials#1356 however there were more uses of FakeAlmaden in other tutorials so things were still blocked. This commit updates all the other uses of FakeAlmaden to use a provider that will have pulse properties moving forward. * Update tutorials/circuits_advanced/08_gathering_system_information.ipynb Co-authored-by: Luciano Bello <[email protected]>
In Qiskit/qiskit#8665 very large pulse properties for long retired 20q backends are removed to save disk space and reduce overhead. However the pulse gates tutorial was still relying on these fake backends having pulse properties. This commit updates the tutorial to use a different backend to unblock that PR. Additionally, the deprecate import statements used in the tutorial are updated to avoid the deprecation warning.
…qiskit-tutorials#1358) * Update more pulse gate tutorial for changes in fake backends In Qiskit/qiskit#8665 very large pulse properties for long retired 20q backends are removed to save disk space and reduce overhead. However the pulse gates tutorial was still relying on these fake backends having pulse properties. This commit updates the tutorial to use a different backend to unblock that PR. Additionally, the deprecate import statements used in the tutorial are updated to avoid the deprecation warning. We previously updated one tutorial in Qiskit/qiskit-tutorials#1356 however there were more uses of FakeAlmaden in other tutorials so things were still blocked. This commit updates all the other uses of FakeAlmaden to use a provider that will have pulse properties moving forward. * Update tutorials/circuits_advanced/08_gathering_system_information.ipynb Co-authored-by: Luciano Bello <[email protected]>
* Remove pulse defaults for old fake 20q backends The pulse defaults payload for the almaden, johannesburg, and singapore fake backends are collectively taking up > 50% of the total disk footprint of an installed copy of Qiskit. This is because the pusle defaults for these backends predate the use the of parameterized pulse definitions and contain arrays of sampled waveforms for the pulse definitions. This exceedingly large file size slows down the entire package and and makes it slower to install. When weighing the potential value these defaults files provide for simulating and compiling with pulse awareness for long retired devices against the real cost of having the files included in the package there isn't a reason to keep the files in the tree any longer. This commit removes the pulse defaults files for these fake backends to greatly shrink the installed package size of qiskit-terra. * Update releasenotes/notes/remove-pulse-defs-old-20q-4ed46085b4a15678.yaml * Update tests and docs Several tests and docs were relying on the pulse data being present in the fake backends. This commit updates the tests and docs to avoid this and either rely on different fake backends that use parametric pulses or not rely on a fake backend at all. In one case a bug is fixed the assembler which was causing the tests to incorrectly pass because the use of pulse backends without parametric pulses was masking incorrect behavior. * Revert passmanager config string test changes * Remove self.maxDiff in str test * Fix missing backtick Co-authored-by: Jake Lishman <[email protected]> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
* Remove pulse defaults for old fake 20q backends The pulse defaults payload for the almaden, johannesburg, and singapore fake backends are collectively taking up > 50% of the total disk footprint of an installed copy of Qiskit. This is because the pusle defaults for these backends predate the use the of parameterized pulse definitions and contain arrays of sampled waveforms for the pulse definitions. This exceedingly large file size slows down the entire package and and makes it slower to install. When weighing the potential value these defaults files provide for simulating and compiling with pulse awareness for long retired devices against the real cost of having the files included in the package there isn't a reason to keep the files in the tree any longer. This commit removes the pulse defaults files for these fake backends to greatly shrink the installed package size of qiskit-terra. * Update releasenotes/notes/remove-pulse-defs-old-20q-4ed46085b4a15678.yaml * Update tests and docs Several tests and docs were relying on the pulse data being present in the fake backends. This commit updates the tests and docs to avoid this and either rely on different fake backends that use parametric pulses or not rely on a fake backend at all. In one case a bug is fixed the assembler which was causing the tests to incorrectly pass because the use of pulse backends without parametric pulses was masking incorrect behavior. * Revert passmanager config string test changes * Remove self.maxDiff in str test * Fix missing backtick Co-authored-by: Jake Lishman <[email protected]> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
* Remove pulse defaults for old fake 20q backends The pulse defaults payload for the almaden, johannesburg, and singapore fake backends are collectively taking up > 50% of the total disk footprint of an installed copy of Qiskit. This is because the pusle defaults for these backends predate the use the of parameterized pulse definitions and contain arrays of sampled waveforms for the pulse definitions. This exceedingly large file size slows down the entire package and and makes it slower to install. When weighing the potential value these defaults files provide for simulating and compiling with pulse awareness for long retired devices against the real cost of having the files included in the package there isn't a reason to keep the files in the tree any longer. This commit removes the pulse defaults files for these fake backends to greatly shrink the installed package size of qiskit-terra. * Update releasenotes/notes/remove-pulse-defs-old-20q-4ed46085b4a15678.yaml * Update tests and docs Several tests and docs were relying on the pulse data being present in the fake backends. This commit updates the tests and docs to avoid this and either rely on different fake backends that use parametric pulses or not rely on a fake backend at all. In one case a bug is fixed the assembler which was causing the tests to incorrectly pass because the use of pulse backends without parametric pulses was masking incorrect behavior. * Revert passmanager config string test changes * Remove self.maxDiff in str test * Fix missing backtick Co-authored-by: Jake Lishman <[email protected]> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Summary
The pulse defaults payload for the almaden, johannesburg, and singapore
fake backends are collectively taking up > 50% of the total disk
footprint of an installed copy of Qiskit. This is because the pusle
defaults for these backends predate the use the of parameterized pulse
definitions and contain arrays of sampled waveforms for the pulse
definitions. This exceedingly large file size slows down the entire
package and and makes it slower to install. When weighing the potential
value these defaults files provide for simulating and compiling with
pulse awareness for long retired devices against the real cost of
having the files included in the package there isn't a reason to keep
the files in the tree any longer. This commit removes the pulse
defaults files for these fake backends to greatly shrink the installed
package size of qiskit-terra.
Details and comments