forked from scipy/scipy
-
Notifications
You must be signed in to change notification settings - Fork 0
108 lines (88 loc) · 3.01 KB
/
linux_mkl_ilp64.yml
File metadata and controls
108 lines (88 loc) · 3.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
name: BLAS tests (Linux)
# This file is meant for testing different BLAS/LAPACK flavors and build
# options on Linux. All other yml files for Linux will only test without BLAS
# (mostly because that's easier and faster to build) or with the same 64-bit
# OpenBLAS build that is used in the wheel jobs.
#
# Jobs and their purpose:
#
# - mkl:
# Tests MKL installed from PyPI (because easiest/fastest, if broken) in
# 3 ways: both LP64 and ILP64 via pkg-config, and then using the
# Single Dynamic Library (SDL, or `libmkl_rt`).
on:
pull_request:
branches:
- main
- maintenance/**
defaults:
run:
shell: bash
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
permissions:
contents: read # to fetch code (actions/checkout)
jobs:
mkl-lp64:
if: "github.repository == 'ev-br/scipy'"
runs-on: ubuntu-latest
name: "MKL (LP64 split, SDL)"
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
submodules: recursive
fetch-depth: 0
- uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0.0
with:
python-version: '3.11'
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y gfortran
pip install cython numpy pybind11 pythran pytest hypothesis pytest-xdist pooch
pip install -r requirements/dev.txt
pip install git+https://github.com/numpy/meson.git@main-numpymeson
pip install mkl mkl-devel
- name: Build with defaults (LP64)
run: |
pkg-config --libs mkl-dynamic-lp64-seq # check link flags
python dev.py build
- name: Test
run: python dev.py test
- name: Build without pkg-config (default options, SDL)
run: |
git clean -xdf > /dev/null
pushd $Python3_ROOT_DIR/lib/pkgconfig
rm mkl*.pc
popd
export MKLROOT=$Python3_ROOT_DIR
python dev.py build
- name: Test
run: python dev.py test -j 2
mkl-ilp64:
if: "github.repository == 'ev-br/scipy'"
runs-on: ubuntu-latest
name: "MKL ILP64"
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
with:
submodules: recursive
fetch-depth: 0
- uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0.0
with:
python-version: '3.11'
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y gfortran
pip install cython numpy pybind11 pythran pytest hypothesis pytest-xdist pooch
pip install -r requirements/dev.txt
pip install git+https://github.com/numpy/meson.git@main-numpymeson
pip install mkl mkl-devel
- name: Build with ILP64
run: |
pkg-config --libs mkl-dynamic-ilp64-seq # check link flags
python dev.py build -C-Dblas-order=mkl -C-Duse-ilp64=true
- name: Test
run: python dev.py test -j 2