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

Enable linux ppc64le #255

Draft
wants to merge 7 commits into
base: main
Choose a base branch
from

Conversation

jeongseok-meta
Copy link
Contributor

@jeongseok-meta jeongseok-meta commented Aug 29, 2024

Checklist

  • Used a personal fork of the feedstock to propose changes
  • Bumped the build number (if the version is unchanged)
  • Reset the build number to 0 (if the version changed)
  • Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
  • Ensured the license file is being packaged.

@conda-forge-webservices
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found some lint.

Here's what I've got...

For recipe/meta.yaml:

  • The conda-forge.yml file is not allowed to have duplicate keys.

@conda-forge-webservices
Copy link
Contributor

conda-forge-webservices bot commented Aug 29, 2024

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.

@jakirkham jakirkham mentioned this pull request Aug 29, 2024
conda-forge.yml Outdated Show resolved Hide resolved
@jakirkham
Copy link
Member

Thanks Jeongseok! 🙏

This looks like a good set of changes

For the remaining CI jobs, think you will need to accept the ToS, which is pretty similar to other CIs ToS. This amounts to making a PR like this one adding your username to the list like so: Quansight/open-gpu-server#37

Once that is done we can see how CI progresses

@jeongseok-meta
Copy link
Contributor Author

Done! Quansight/open-gpu-server#39

@jakirkham
Copy link
Member

Great, thank you! 🙏

Asked Jaime to take a look as he typically reviews those 🙂

Am wondering if it is worth grabbing this workaround for NumPy builds in PyTorch: #254 (comment)

The reason being we discovered ARM builds likely need that workaround. So think if that is true, it is probably also true for Power

What do you think?

Should add it is ok if you prefer to wait and see how CI goes first. We do now cover that in the test suite after having seen it before. So we will know either way if it is an issue

- python -c "import torch; torch.tensor(1).to('cpu').numpy(); print('numpy support enabled!!!')"

@hmaarrfk
Copy link
Contributor

I suggest adding back the early failure I am suggesting in:
292cd8e

you might be faster at debuging what is going on, but that early test might be more than adequate

@jakirkham
Copy link
Member

Agree that sounds like a good plan. Thanks for putting it together Mark! 🙏

Commented over there 🙂

@jeongseok-meta
Copy link
Contributor Author

@conda-forge-admin, please rerender

@jeongseok-meta
Copy link
Contributor Author

@conda-forge-admin, please restart ci

@hmaarrfk
Copy link
Contributor

please add:

skip: true  # [py!=310]

to the top level build section

if you are not ready yet to get the GPU enabled, please add an other line with:

skip: true   # [cuda_compiler_version!=None]

and rerender

@hmaarrfk
Copy link
Contributor

@conda-forge-admin please rerender

@hmaarrfk
Copy link
Contributor

sorry about that, lets just skip everything except for ppc64le for now and then re-optimize the builds.

@jeongseok-meta
Copy link
Contributor Author

Sure, feel free to do anything that makes sense to you or take over this PR. Thank you for helping!

@hmaarrfk
Copy link
Contributor

no i'm struggling with aarch64 already. i won't be able to take over, but this feedstock just hogs the CIs, then you end up building linux64 for 6 hours instead of running ppc64le which you want!

@hmaarrfk
Copy link
Contributor

maybe try rerendering locally, rerendering with cuda is always slow...

@jeongseok-meta
Copy link
Contributor Author

@conda-forge-admin please rerender

@hmaarrfk
Copy link
Contributor

@conda-forge-admin please rerender

One more rerender. I am allowed to the GPU runners, but you can simply use azure until the 6 hour timeout is hit.

@hmaarrfk
Copy link
Contributor

@conda-forge-admin please rerender

sigh... always one more thing to rerender

@hmaarrfk
Copy link
Contributor

alright, you have the CIs now. happy tuning!

@hmaarrfk
Copy link
Contributor

i'm also assuming that you have access to a powerful linux machine with docker.

To build locally

python build-locally.py

and it should walk you through things.

@hmaarrfk
Copy link
Contributor

While the builds have started, I have a feeling you are hitting the same problems I am with aarch
image

See:
#256

Depending on what you are trying to prove at this stage (numpy detection vs others), you might want to pull in my patch that causes this to fail loudly.

skip: true # [py!=310]
skip: true # [osx]
skip: true # [aarch64]
skip: true # [linux64]
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
skip: true # [linux64]
skip: true # [linux64]
skip: true # [cuda_compiler_version != "None"]

While you are hitting failures in the CPU build, it would be nice to just cancel the cuda builds too ;)

@conda-forge-admin
Copy link
Contributor

conda-forge-admin commented Dec 3, 2024

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipe/meta.yaml:

  • ℹ️ The recipe is not parsable by parser conda-souschef (grayskull). Your recipe may not receive automatic updates and/or may not be compatible with conda-forge's infrastructure. Please check the logs for more information and ensure your recipe can be parsed.
  • ℹ️ The recipe is not parsable by parser conda-recipe-manager. Your recipe may not receive automatic updates and/or may not be compatible with conda-forge's infrastructure. Please check the logs for more information and ensure your recipe can be parsed.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/12130811287. Examine the logs at this URL for more detail.

@jakirkham
Copy link
Member

jakirkham commented Jan 9, 2025

Happy New Year! 🥳

Noticed some conflicts crept in due to recent merges

To fix conflicts, would recommend...

  1. Check this PR branch locally
  2. Attempt merge
  3. Resolve conflicts on the directory recipe/ only (git mergetool recipe works well)
  4. git rm -rf '.ci_support/linux_*' '.ci_support/osx_*' '.ci_support/win_*' .github/workflows
  5. Re-render
  6. Finish merge and push changes

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