mirror of
https://github.com/pytorch/pytorch.git
synced 2025-10-20 21:14:14 +08:00
[CI] Use setup-python
from for Mac tests (#155698)
Instead of `setup-miniconda` - Remove `CONDA_RUN` macro... - Hack the search path in `macos-test.sh` to put both python and python3 aliases first in the path (not sure what other action are messing with path environment variable) - Skip `TestMultiprocessing.test_fs_sharing` as even though it completes, it hangs on the shutdown both in CI and in all local setups I have - Skip `TestCppExtensionOpenRgistration.test_base_device_registration` as it hangs on the shutdown as well Pull Request resolved: https://github.com/pytorch/pytorch/pull/155698 Approved by: https://github.com/atalman ghstack dependencies: #155476, #155493, #155601, #155515, #155697
This commit is contained in:
committed by
PyTorch MergeBot
parent
57e4d7b5cc
commit
2b9d638e33
@ -5,11 +5,6 @@ set -x
|
||||
# shellcheck source=./macos-common.sh
|
||||
source "$(dirname "${BASH_SOURCE[0]}")/macos-common.sh"
|
||||
|
||||
if [[ -n "$CONDA_ENV" ]]; then
|
||||
# Use binaries under conda environment
|
||||
export PATH="$CONDA_ENV/bin":$PATH
|
||||
fi
|
||||
|
||||
# Test that OpenMP is enabled
|
||||
pushd test
|
||||
if [[ ! $(python -c "import torch; print(int(torch.backends.openmp.is_available()))") == "1" ]]; then
|
||||
|
44
.github/workflows/_mac-test.yml
vendored
44
.github/workflows/_mac-test.yml
vendored
@ -60,8 +60,6 @@ jobs:
|
||||
test:
|
||||
# Don't run on forked repos or empty test matrix
|
||||
if: github.repository_owner == 'pytorch' && toJSON(fromJSON(inputs.test-matrix).include) != '[]'
|
||||
# For setup-miniconda, see https://github.com/conda-incubator/setup-miniconda/issues/179
|
||||
# Also ensure that we always run with the right architecture
|
||||
defaults:
|
||||
run:
|
||||
shell: bash -e -l {0}
|
||||
@ -124,8 +122,8 @@ jobs:
|
||||
MONITOR_LOG_INTERVAL: ${{ inputs.monitor-log-interval }}
|
||||
MONITOR_DATA_COLLECT_INTERVAL: ${{ inputs.monitor-data-collect-interval }}
|
||||
run: |
|
||||
${CONDA_RUN} python3 -m pip install psutil==5.9.1 dataclasses_json==0.6.7
|
||||
${CONDA_RUN} python3 -m tools.stats.monitor --log-interval "$MONITOR_LOG_INTERVAL" --data-collect-interval "$MONITOR_DATA_COLLECT_INTERVAL" > usage_log.txt 2>&1 &
|
||||
python3 -m pip install psutil==5.9.1 dataclasses_json==0.6.7
|
||||
python3 -m tools.stats.monitor --log-interval "$MONITOR_LOG_INTERVAL" --data-collect-interval "$MONITOR_DATA_COLLECT_INTERVAL" > usage_log.txt 2>&1 &
|
||||
echo "monitor-script-pid=${!}" >> "${GITHUB_OUTPUT}"
|
||||
|
||||
- name: Download build artifacts
|
||||
@ -140,11 +138,10 @@ jobs:
|
||||
with:
|
||||
use-gha: true
|
||||
|
||||
- name: Setup miniconda
|
||||
uses: pytorch/test-infra/.github/actions/setup-miniconda@main
|
||||
- name: Setup Python
|
||||
uses: pytorch/test-infra/.github/actions/setup-python@main
|
||||
with:
|
||||
python-version: ${{ inputs.python-version }}
|
||||
environment-file: .github/requirements/conda-env-macOS-ARM64
|
||||
pip-requirements-file: .github/requirements/pip-requirements-macOS.txt
|
||||
default-packages: ""
|
||||
|
||||
@ -197,37 +194,32 @@ jobs:
|
||||
# shellcheck disable=SC1090
|
||||
set -ex
|
||||
|
||||
arch
|
||||
|
||||
if [[ -n "$CONDA_ENV" ]]; then
|
||||
# Use binaries under conda environment
|
||||
export PATH="$CONDA_ENV/bin":$PATH
|
||||
fi
|
||||
# TODO: Remove me later, and properly activate venv
|
||||
PATH="$(dirname "$(which python)"):$PATH"
|
||||
export PATH
|
||||
|
||||
# Print out some information about the test environment
|
||||
which conda
|
||||
conda --version
|
||||
${CONDA_RUN} which python3
|
||||
${CONDA_RUN} python3 --version
|
||||
${CONDA_RUN} which python
|
||||
${CONDA_RUN} python --version
|
||||
for tool in python3 python; do
|
||||
which $tool
|
||||
$tool --version
|
||||
done
|
||||
|
||||
${CONDA_RUN} python3 -mpip install --no-index --no-deps dist/*.whl
|
||||
python3 -mpip install --no-index --no-deps dist/*.whl
|
||||
|
||||
set +e
|
||||
pushd "${RUNNER_TEMP}"
|
||||
# Install pip dependencies if they are not found. This is to mitigate a peculiar
|
||||
# flaky missing dependencies on MacOS
|
||||
${CONDA_RUN} python3 -c "import torch"
|
||||
python3 -c "import torch"
|
||||
RC=$?
|
||||
popd
|
||||
|
||||
if [ "${RC}" -ne 0 ]; then
|
||||
${CONDA_RUN} python3 -mpip install --ignore-installed -r "${PIP_REQUIREMENTS_FILE}"
|
||||
python3 -mpip install --ignore-installed -r "${PIP_REQUIREMENTS_FILE}"
|
||||
fi
|
||||
set -e
|
||||
|
||||
${CONDA_RUN} .ci/pytorch/macos-test.sh
|
||||
.ci/pytorch/macos-test.sh
|
||||
|
||||
- name: Print remaining test logs
|
||||
shell: bash
|
||||
@ -239,11 +231,7 @@ jobs:
|
||||
shell: bash
|
||||
if: ${{ contains(steps.get-job-id.outputs.job-name, 'mps') }}
|
||||
run: |
|
||||
if [[ -n "$CONDA_ENV" ]]; then
|
||||
# Use binaries under conda environment
|
||||
export PATH="$CONDA_ENV/bin":$PATH
|
||||
fi
|
||||
${CONDA_RUN} python3 test/bench_mps_ops.py
|
||||
python3 test/bench_mps_ops.py
|
||||
|
||||
|
||||
- name: Stop monitoring script
|
||||
|
@ -74,6 +74,10 @@ class TestCppExtensionOpenRgistration(common.TestCase):
|
||||
|
||||
torch.utils.generate_methods_for_privateuse1_backend(for_storage=True)
|
||||
|
||||
@unittest.skipIf(
|
||||
common.IS_MACOS,
|
||||
"Hangs on shutdown, see https://github.com/pytorch/pytorch/issues/155759",
|
||||
)
|
||||
def test_base_device_registration(self):
|
||||
self.assertFalse(self.module.custom_add_called())
|
||||
# create a tensor using our custom device object
|
||||
|
@ -413,6 +413,10 @@ class TestMultiprocessing(TestCase):
|
||||
TEST_WITH_ASAN,
|
||||
"seems to hang with ASAN, see https://github.com/pytorch/pytorch/issues/5326",
|
||||
)
|
||||
@unittest.skipIf(
|
||||
IS_MACOS,
|
||||
"seems to hang after completion on MacOS",
|
||||
)
|
||||
def test_fs_sharing(self):
|
||||
with fs_sharing():
|
||||
# The test works but is very slow on MacOS, see https://github.com/pytorch/pytorch/pull/93183,
|
||||
|
Reference in New Issue
Block a user