diff --git a/.github/workflows/build-numpy.yml b/.github/workflows/build-numpy.yml index f992586a..44d777c3 100644 --- a/.github/workflows/build-numpy.yml +++ b/.github/workflows/build-numpy.yml @@ -9,7 +9,7 @@ on: - cron: '0 5 * * *' jobs: - NumPyMultiarrayTests: + np-multiarray-tgl: runs-on: intel-ubuntu-latest @@ -42,6 +42,12 @@ jobs: with: python-version: '3.11' + - name: Install Intel SDE + run: | + curl -o /tmp/sde.tar.xz https://downloadmirror.intel.com/788820/sde-external-9.27.0-2023-09-13-lin.tar.xz + mkdir /tmp/sde && tar -xvf /tmp/sde.tar.xz -C /tmp/sde/ + sudo mv /tmp/sde/* /opt/sde && sudo ln -s /opt/sde/sde64 /usr/bin/sde + - name: Install NumPy dependencies working-directory: ${{ github.workspace }}/numpy run: | @@ -66,10 +72,9 @@ jobs: export NUMPY_SITE=$(realpath build-install/usr/lib/python*/site-packages/) export PYTHONPATH="$PYTHONPATH:$NUMPY_SITE" cd build-install && - python -c "import numpy; numpy.show_config()" && - python -m pytest $NUMPY_SITE/numpy/_core/tests/test_multiarray.py + sde -tgl -- python -m pytest $NUMPY_SITE/numpy/_core/tests/test_multiarray.py - NumPy-SPR-baseline: + np-multiarray-spr: runs-on: intel-ubuntu-latest @@ -130,15 +135,6 @@ jobs: run: | spin build -- -Dallow-noblas=true -Dcpu-baseline=avx512_spr - - name: Run tests on TGL - working-directory: ${{ github.workspace }}/numpy - run: | - export NUMPY_SITE=$(realpath build-install/usr/lib/python*/site-packages/) - export PYTHONPATH="$PYTHONPATH:$NUMPY_SITE" - cd build-install && - sde -tgl -- python -c "import numpy; numpy.show_config()" && - sde -tgl -- python -m pytest $NUMPY_SITE/numpy/_core/tests/test_multiarray.py - - name: Run tests on SPR working-directory: ${{ github.workspace }}/numpy run: | diff --git a/.github/workflows/build-test-on-32bit.sh b/.github/workflows/build-test-on-32bit.sh new file mode 100644 index 00000000..b0108ab2 --- /dev/null +++ b/.github/workflows/build-test-on-32bit.sh @@ -0,0 +1,30 @@ +#!/bin/bash + +## Set up environment +/opt/python/cp39-cp39/bin/python -mvenv venv +source venv/bin/activate +python3 -m pip install meson ninja +export CXX=g++ + +## Install google test from source +git clone https://github.com/google/googletest.git -b v1.14.0 +cd googletest +mkdir build +cd build +cmake .. -DBUILD_GMOCK=OFF +make install + +## Install Intel SDE +curl -o /tmp/sde.tar.xz https://downloadmirror.intel.com/784319/sde-external-9.24.0-2023-07-13-lin.tar.xz +mkdir /tmp/sde && tar -xvf /tmp/sde.tar.xz -C /tmp/sde/ +mv /tmp/sde/* /opt/sde && ln -s /opt/sde/sde /usr/bin/sde + +## Build x86-simd-sort +cd /xss +meson setup -Dbuild_tests=true --warnlevel 2 --werror --buildtype release builddir +cd builddir +ninja + +## Run tests +sde -tgl -- ./testexe +sde -skl -- ./testexe diff --git a/.github/workflows/c-cpp.yml b/.github/workflows/c-cpp.yml index 3929c355..8d7ade2b 100644 --- a/.github/workflows/c-cpp.yml +++ b/.github/workflows/c-cpp.yml @@ -167,3 +167,15 @@ jobs: - name: Run test suite on SPR run: sde -spr -- ./builddir/testexe + + manylinux-32bit: + + runs-on: intel-ubuntu-latest + + steps: + - uses: actions/checkout@v3 + + - name: Build and test on 32-bit manylinux2014 + run: | + docker run -v $(pwd):/xss quay.io/pypa/manylinux2014_i686 \ + /bin/bash -xc "source /xss/.github/workflows/build-test-on-32bit.sh"