Skip to content

Use manylinux2014 for wheel builds#1498

Merged
hhorii merged 7 commits into
Qiskit:mainfrom
mtreinish:bump-manylinux
Apr 6, 2022
Merged

Use manylinux2014 for wheel builds#1498
hhorii merged 7 commits into
Qiskit:mainfrom
mtreinish:bump-manylinux

Conversation

@mtreinish
Copy link
Copy Markdown
Member

Summary

Starting with the recently released qiskit-terra 0.20.0 qiskit only
builds packages on manylinux2014 now. This commit updates the wheel jobs
for aer to only use manylinux2014 for builds now as we don't want to be
building terra from source (especially now that it requires rust).

Details and comments

Starting with the recently released qiskit-terra 0.20.0 qiskit only
builds packages on manylinux2014 now. This commit updates the wheel jobs
for aer to only use manylinux2014 for builds now as we don't want to be
building terra from source (especially now that it requires rust).
mtreinish added a commit to mtreinish/qiskit-aer that referenced this pull request Apr 4, 2022
In the recently released terra 0.20.0 release the minimum python
packaging spec supported is manylinux2014 now. On the main branch we
bumped the manylinux base image we use for wheel jobs to manylinux2014
in Qiskit#1498. However, on the stable 0.10.x branch we don't want to do that
since we probably should not drop support for older environments on a
stable release. This commit updates the wheel job config to instead
install terra from a compatible binary wheel instead of using the latest
release. This should hopefully avoid the CI failure but still enable us
to run without building terra from source or dropping support for
manylinux2010.
jakelishman
jakelishman previously approved these changes Apr 4, 2022
Copy link
Copy Markdown
Member

@jakelishman jakelishman left a comment

Choose a reason for hiding this comment

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

Did we decide we were ok to do this in a patch release? I think maybe we did it once before on Aer, so probably not the end of the world.

@mtreinish
Copy link
Copy Markdown
Member Author

I was thinking that for stable we would stick with manylinux2010, as using manylinux2014 seems like a potentially disruptive change for a patch release. I pushed up #1499 to do just install an old terra release for 0.10.x wheel jobs

@mtreinish
Copy link
Copy Markdown
Member Author

Sigh, it looks like the wheel jobs are failing because epel dropped support for i686 in centos 7 so switching to manylinux2014 for i686 wheels fails because there is no openblas-devel package.

hhorii added a commit that referenced this pull request Apr 4, 2022
In the recently released terra 0.20.0 release the minimum python
packaging spec supported is manylinux2014 now. On the main branch we
bumped the manylinux base image we use for wheel jobs to manylinux2014
in #1498. However, on the stable 0.10.x branch we don't want to do that
since we probably should not drop support for older environments on a
stable release. This commit updates the wheel job config to instead
install terra from a compatible binary wheel instead of using the latest
release. This should hopefully avoid the CI failure but still enable us
to run without building terra from source or dropping support for
manylinux2010.

* Use unitary equivalence instead of circuit equality in noise tests (#1446)

Co-authored-by: Hiroshi Horii <horii@jp.ibm.com>
hhorii added a commit to hhorii/qiskit-aer that referenced this pull request Apr 5, 2022
In the recently released terra 0.20.0 release the minimum python
packaging spec supported is manylinux2014 now. On the main branch we
bumped the manylinux base image we use for wheel jobs to manylinux2014
in Qiskit#1498. However, on the stable 0.10.x branch we don't want to do that
since we probably should not drop support for older environments on a
stable release. This commit updates the wheel job config to instead
install terra from a compatible binary wheel instead of using the latest
release. This should hopefully avoid the CI failure but still enable us
to run without building terra from source or dropping support for
manylinux2010.

* Use unitary equivalence instead of circuit equality in noise tests (Qiskit#1446)

Co-authored-by: Hiroshi Horii <horii@jp.ibm.com>
Since installing openblas from source is a bit of effort this PR instead
pivots back to using manylinux2010 for i686 builds. Instead we'll
install the rust compiler and just build terra from source which is a
lot less effort than compiling openblas, at least until a better
solution can be found.
@mtreinish
Copy link
Copy Markdown
Member Author

It looks like this is blocked on #1497 I'm going to bundle that into this PR so we can unblock CI

Copy link
Copy Markdown
Collaborator

@hhorii hhorii left a comment

Choose a reason for hiding this comment

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

LGTM

@hhorii hhorii merged commit c7bef33 into Qiskit:main Apr 6, 2022
hhorii pushed a commit to hhorii/qiskit-aer that referenced this pull request Apr 6, 2022
Starting with the recently released qiskit-terra 0.20.0 qiskit only
builds packages on manylinux2014 now. This commit update the wheel jobs
for Aer to install the rust compiler and build terra from source when CI uses
manylinux2010 for i686 builds.
In manylinux2014 for i686, binary of OpenBLAS is not available and its installation
from source codes is necessary. Installation of rust compiler and terra is a
lot less effort than compiling OpenBLAS.
See the details in Qiskit#1498.

* Thread control for Thrust CPU is now same as device=CPU

This commit also includes Qiskit#1497, which fix performance issue in device=Thrust.
A cause of this issue is that Thrust CPU always applied OpenMP for threading
kernel programs without referring to the number of qubits.
This fix applies OpenMP referring to statevector_parallel_threshold parameter
as same as device=CPU.
See the details in Qiskit#1497.

Co-authored-by: Jun Doi <doichan@jp.ibm.com>
@hhorii hhorii mentioned this pull request Apr 6, 2022
1 task
@mtreinish mtreinish deleted the bump-manylinux branch March 4, 2025 17:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants