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 microarchitecture-optimized builds #45

Open
wants to merge 11 commits into
base: main
Choose a base branch
from

Conversation

traversaro
Copy link
Contributor

@traversaro traversaro commented Mar 9, 2024

As documented in https://conda-forge.org/docs/maintainer/knowledge_base/#microarch .
Fix #38 .

xref: conda-forge/conda-forge.github.io#1261

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 just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@traversaro
Copy link
Contributor Author

@conda-forge-admin, please rerender

Copy link
Contributor

github-actions bot commented Mar 9, 2024

Hi! This is the friendly automated conda-forge-webservice.

I tried to rerender for you, but it looks like there was nothing to do.

This message was generated by GitHub actions workflow run https://github.com/conda-forge/mujoco-feedstock/actions/runs/8217667360.

@traversaro
Copy link
Contributor Author

@conda-forge-admin, please rerender

@traversaro
Copy link
Contributor Author

Somehow:

  script_env:
    - MUJOCO_ENABLE_AVX=ON  # [unix and x86_64 and (microarch_level == 3 or microarch_level == 4)]
    - MUJOCO_ENABLE_AVX=OFF  # [not (unix and x86_64 and (microarch_level == 3 or microarch_level == 4))]

is not being passed, not sure why. Perhaps they need to be in the output section?

@traversaro
Copy link
Contributor Author

@conda-forge-admin, please rerender

@traversaro
Copy link
Contributor Author

Somehow:

  script_env:
    - MUJOCO_ENABLE_AVX=ON  # [unix and x86_64 and (microarch_level == 3 or microarch_level == 4)]
    - MUJOCO_ENABLE_AVX=OFF  # [not (unix and x86_64 and (microarch_level == 3 or microarch_level == 4))]

is not being passed, not sure why. Perhaps they need to be in the output section?

Setting script_env in the build section of the output works, what was confusing is that if script_env was set at global level, you still get the message:

2024-03-10T10:20:57.9234539Z /opt/conda/lib/python3.10/site-packages/conda_build/environ.py:526: UserWarning: The environment variable 'MUJOCO_ENABLE_AVX' is being passed through with value '<hidden>'.  If you are splitting build and test phases with --no-test, please ensure that this value is also set similarly at test time.

but then MUJOCO_ENABLE_AVX was not set.

@conda-forge-webservices
Copy link
Contributor

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

I was trying to look for recipes to lint for you, but it appears we have a merge conflict.
Please try to merge or rebase with the base branch to resolve this conflict.

Please ping the 'conda-forge/core' team (using the @ notation in a comment) if you believe this is a bug.

@traversaro
Copy link
Contributor Author

Given what is available on CI machine, I reduced the microarch build matrix to:

microarch_level:  # [unix and x86_64]
  - 1  # [unix and x86_64]
  - 3  # [unix and x86_64]
  - 4  # [unix and x86_64]

to

microarch_level:  # [linux and x86_64]
  - 1  # [linux and x86_64]
  - 3  # [linux and x86_64]

Given the limited number of machine available with AVX512, and the limited number of macOS users really focused on performance still on mac Intel, I guess this may be anyhow a sensible tradeoff considering the usage of CI.

@conda-forge-webservices
Copy link
Contributor

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) and found it was in an excellent condition.

@traversaro
Copy link
Contributor Author

@conda-forge-admin, please rerender

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.

Enable AVX-enabled builds
1 participant