Disable parallel sphinx builds by default#6539
Merged
mergify[bot] merged 3 commits intoQiskit:mainfrom Jul 22, 2021
Merged
Conversation
This commit disables the use of parallel sphinx by default in CI. This was originally turned on by default in Qiskit#4477 to try and improve CI throughput. While this did increase the docs build time a bit the use of jupyter-sphinx has proven to not really parallel be safe. There is a high failure rate caused by jupyter-sphinx racing against itself causing an error around a zmq address conflict. While the speed boost is useful in trying to improve CI throughput that benefit is outweighed by the failure rate. Fixes Qiskit#5904
Member
Author
|
Marking as on hold until CI comes back, I'm not sure how long a docs build will take in CI serially. Hopefully it's not too much longer than a parallel build |
Member
Author
|
Hmm, so it finished in ~40 mins which is definitely slower than with parallel builds, we've been at about the 30min mark for docs builds (parallel sphinx enabled) https://dev.azure.com/qiskit-ci/qiskit-terra/_pipeline/analytics/duration?definitionId=1&contextType=build I think this is still worth doing to make the jobs more reliable. I think spurious failures cause more lost throughput than our slowest job getting slower. |
peendebak
pushed a commit
to peendebak/qiskit-terra
that referenced
this pull request
Jun 10, 2021
mergify Bot
added a commit
that referenced
this pull request
Jun 10, 2021
* make waveform amplitude limit optional * change order of Waveform arguments for backwards compatibility * update black once more * Update qiskit/pulse/library/waveform.py Co-authored-by: Thomas Alexander <thomasalexander2718@gmail.com> * move limit_amplitude from waveform to pulse * use limit_amplitude in pulses; add tests * format strings * fix max line length * fix line length * add release notes * fix reno file * Update releasenotes/notes/add-option-to-disable-waveform-amplitude-limit-c58e2ec61f6789e6.yaml Co-authored-by: Thomas Alexander <thomasalexander2718@gmail.com> * Update releasenotes/notes/add-option-to-disable-waveform-amplitude-limit-c58e2ec61f6789e6.yaml Co-authored-by: Thomas Alexander <thomasalexander2718@gmail.com> * Update releasenotes/notes/add-option-to-disable-waveform-amplitude-limit-c58e2ec61f6789e6.yaml Co-authored-by: Thomas Alexander <thomasalexander2718@gmail.com> * Remove unnecessary print statement. * trigger build, see #6539 * trigger build Co-authored-by: Pieter Eendebak <pieter.eendebak@gmail.com> Co-authored-by: Thomas Alexander <thomasalexander2718@gmail.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
kdk
approved these changes
Jul 22, 2021
mtreinish
added a commit
to mtreinish/qiskit-core
that referenced
this pull request
Jan 6, 2023
With the recent merge of Qiskit#9346 that stopped using the problematic jupyter-sphinx plugin we're no long blocked from running sphinx-build in parallel anymore. We had originally enabled this in Qiskit#4477 to get a speed boost during docs builds. However, we were forced to revert that in Qiskit#6539 because jupyter-sphinx was unreliable and had a race condition when 2 jupyter-execute blocks were run at the same time (see Qiskit#5904 for more details). Since we've removed the jupyter-sphinx usage that is no longer a problem and we can reliably run parallel sphinx builds again. This commit makes that change and changes the default sphinx-build behavior when run via tox (as is done via ci) to use all available system cores to perform a sphinx build. Annecdoteally this provides a nice speed up, on my local workstation a full docs build went from taking 8min 42 seconds for a serial build to 2min 35sec with a parallel build.
mergify Bot
added a commit
that referenced
this pull request
Jan 6, 2023
With the recent merge of #9346 that stopped using the problematic jupyter-sphinx plugin we're no long blocked from running sphinx-build in parallel anymore. We had originally enabled this in #4477 to get a speed boost during docs builds. However, we were forced to revert that in #6539 because jupyter-sphinx was unreliable and had a race condition when 2 jupyter-execute blocks were run at the same time (see #5904 for more details). Since we've removed the jupyter-sphinx usage that is no longer a problem and we can reliably run parallel sphinx builds again. This commit makes that change and changes the default sphinx-build behavior when run via tox (as is done via ci) to use all available system cores to perform a sphinx build. Annecdoteally this provides a nice speed up, on my local workstation a full docs build went from taking 8min 42 seconds for a serial build to 2min 35sec with a parallel build. Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
king-p3nguin
pushed a commit
to king-p3nguin/qiskit-terra
that referenced
this pull request
Jan 11, 2023
With the recent merge of Qiskit#9346 that stopped using the problematic jupyter-sphinx plugin we're no long blocked from running sphinx-build in parallel anymore. We had originally enabled this in Qiskit#4477 to get a speed boost during docs builds. However, we were forced to revert that in Qiskit#6539 because jupyter-sphinx was unreliable and had a race condition when 2 jupyter-execute blocks were run at the same time (see Qiskit#5904 for more details). Since we've removed the jupyter-sphinx usage that is no longer a problem and we can reliably run parallel sphinx builds again. This commit makes that change and changes the default sphinx-build behavior when run via tox (as is done via ci) to use all available system cores to perform a sphinx build. Annecdoteally this provides a nice speed up, on my local workstation a full docs build went from taking 8min 42 seconds for a serial build to 2min 35sec with a parallel build. Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Cryoris
pushed a commit
to Cryoris/qiskit-terra
that referenced
this pull request
Jan 12, 2023
With the recent merge of Qiskit#9346 that stopped using the problematic jupyter-sphinx plugin we're no long blocked from running sphinx-build in parallel anymore. We had originally enabled this in Qiskit#4477 to get a speed boost during docs builds. However, we were forced to revert that in Qiskit#6539 because jupyter-sphinx was unreliable and had a race condition when 2 jupyter-execute blocks were run at the same time (see Qiskit#5904 for more details). Since we've removed the jupyter-sphinx usage that is no longer a problem and we can reliably run parallel sphinx builds again. This commit makes that change and changes the default sphinx-build behavior when run via tox (as is done via ci) to use all available system cores to perform a sphinx build. Annecdoteally this provides a nice speed up, on my local workstation a full docs build went from taking 8min 42 seconds for a serial build to 2min 35sec with a parallel build. Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This commit disables the use of parallel sphinx by default in CI. This
was originally turned on by default in #4477 to try and improve CI
throughput. While this did improve the docs build time a bit the use of
jupyter-sphinx has proven to not really parallel be safe. There is a
high failure rate caused by jupyter-sphinx racing against itself causing
an error around a zmq address conflict. While the speed boost is useful
in trying to improve CI throughput that benefit is outweighed by the
failure rate.
Details and comments
Fixes #5904