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

[M1] Set build version and delocate wheels #6110

Merged
merged 1 commit into from
May 31, 2022
Merged

Conversation

malfet
Copy link
Contributor

@malfet malfet commented May 30, 2022

@malfet malfet force-pushed the malfet/m1-delocate-wheels branch 4 times, most recently from 68ab11b to a17740e Compare May 30, 2022 19:34
@malfet malfet requested a review from atalman May 30, 2022 19:34
Copy link
Contributor

@atalman atalman left a comment

Choose a reason for hiding this comment

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

LGTM!

Copy link
Contributor

@atalman atalman left a comment

Choose a reason for hiding this comment

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

Looks like we need to fix this:
usage: conda [-h] [-V] command ...
conda: error: unrecognized arguments: -c
Error: Process completed with exit code 2.

@malfet malfet force-pushed the malfet/m1-delocate-wheels branch from a17740e to aa21152 Compare May 30, 2022 19:44
@malfet malfet force-pushed the malfet/m1-delocate-wheels branch from aa21152 to e1b77cf Compare May 31, 2022 06:02
@malfet malfet merged commit 2a81071 into main May 31, 2022
@malfet malfet deleted the malfet/m1-delocate-wheels branch May 31, 2022 06:05
@github-actions
Copy link

Hey @malfet!

You merged this PR, but no labels were added. The list of valid labels is available at https://github.com/pytorch/vision/blob/main/.github/process_commit.py

@datumbox datumbox added topic: build topic: binaries other if you have no clue or if you will manually handle the PR in the release notes labels May 31, 2022
facebook-github-bot pushed a commit that referenced this pull request Jun 6, 2022
Summary:
This would package libpng and libjpeg.dylib into wheel files
Add a very simple test step, copied from https://github.com/pytorch/pytorch.github.io/blob/1eaa33a3d3f1b83b64c5031c6dd04dbb238d6105/scripts/test_install.py#L78
Cherry-picked from https://github.com/pytorch/builder/blob/d0bc74cc363a9da5a8b6a40e883d40d25d050036/build_m1_domains.sh#L22

Reviewed By: NicolasHug

Differential Revision: D36931837

fbshipit-source-id: 3b010a6a3ffca837682242f419574e32abd52d70
NicolasHug added a commit that referenced this pull request Jun 15, 2022
* Add M1 wheels binary builds (#5948)

* [M1] Set build version and delocate wheels (#6110)

This would package libpng and libjpeg.dylib into wheel files
Add a very simple test step, copied from https://github.com/pytorch/pytorch.github.io/blob/1eaa33a3d3f1b83b64c5031c6dd04dbb238d6105/scripts/test_install.py#L78
Cherry-picked from https://github.com/pytorch/builder/blob/d0bc74cc363a9da5a8b6a40e883d40d25d050036/build_m1_domains.sh#L22

* [BE] Unify version computation (#6117)

* [BE] Unify version computation

Instead of hardcoding dev version in various script, use one from
`version.txt` if `setup_build_version` is called without arguments

Also, pass `--pre` option to M1 build/test pip install commands to build
TorchVision against nightly pytorch

* Pin torchvision dependency to a specific pytorch version

* [M1] Install "jpeg<=9b" rather than OpenJpeg (#6122)

Explicitly set PATH to point to `conda` binary, otherwise libjpeg detection logic does not work
Pin libjpeg to the same version on x86 and m1
Add simple tests that jpeg can be decoded by a generated wheel

* Add unit-tests for M1 (#6132)

* Add M1 testing job

* libjpeg -> jpeg<=9b in test-m1.yml

* Added export PATH=~/miniconda3/bin... from 6122

* Tests were OK, let's see if we can remove the pinning

* GH: Add M1 conda build workflows (#6135)

Clean up Conda build folder before every run
Enable artifact upload to GitHub for every workflow run, but upload to Conda/S3 only on nightly pushes

Test plan: `conda install -c pytorch-nightly torchvision; python -c "import torchvision;print(torchvision.io.read_image('hummingbird.jpg').shape)"`

* Fix `Test M1` workflow

By passing `--pre` option to `pip install`, otherwise torchvision were always tested against last PyTorch release

* Adding tagged builds for M1 (#6140)

* Adding tagged builds

* Testing

* Testing

* Testing

* Testing

* Adding conda builds

* Fix `if` condition for s3/conda uploads (#6146)

Replace `steps.extract_branch.outputs.branch` (which were probably taken from
https://stackoverflow.com/questions/58033366/how-to-get-the-current-branch-within-github-actions ) with straightforward `github.event.ref`

Tested in
https://github.com/malfet/deleteme/runs/6822647720?check_suite_focus=true and https://github.com/malfet/deleteme/runs/6822691158?check_suite_focus=true

* Fix typo in GHA nightly build condition (#6158)

s#ref/heads/#refs/heads/#

I should have noticed it while copy-n-pasting the condition. Unfortunately there are no way to test is other than in prod, but nightly builds are still not getting pushed, see https://github.com/pytorch/vision/runs/6860407007?check_suite_focus=true for example

* Making sure we are building against release

* Testing

Testing

Testing

Testing

testing

Testing

Testing

Testing

Testing

Testing

Testing

Testing

* Testing

* Testing

* Cleanup

* Refactoring logic

Co-authored-by: Nikita Shulga <[email protected]>
Co-authored-by: Nicolas Hug <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cla signed other if you have no clue or if you will manually handle the PR in the release notes topic: binaries topic: build
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants