File tree Expand file tree Collapse file tree 3 files changed +77
-42
lines changed Expand file tree Collapse file tree 3 files changed +77
-42
lines changed Original file line number Diff line number Diff line change @@ -164,6 +164,47 @@ jobs:
164
164
# TODO: gcov
165
165
env :
166
166
PYTHONOPTIMIZE : 2
167
+
168
+ # Add ARM64-specific full test
169
+ aarch64_test :
170
+ needs : [smoke_test]
171
+ if : github.repository == 'numpy/numpy'
172
+ runs-on : ubuntu-22.04-arm
173
+ steps :
174
+ - name : Checkout for PR
175
+ if : github.event_name == 'pull_request'
176
+ uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
177
+ with :
178
+ submodules : recursive
179
+ fetch-tags : true
180
+ persist-credentials : false
181
+
182
+ - uses : actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0
183
+ with :
184
+ python-version : ' 3.11'
185
+
186
+ - name : Install Python dependencies
187
+ run : |
188
+ python -m pip install -r requirements/build_requirements.txt
189
+ python -m pip install -r requirements/test_requirements.txt
190
+ python -m pip install -r requirements/ci32_requirements.txt
191
+ mkdir -p ./.openblas
192
+ python -c"import scipy_openblas32 as ob32; print(ob32.get_pkg_config())" > ./.openblas/scipy-openblas.pc
193
+
194
+ - name : Build
195
+ env :
196
+ PKG_CONFIG_PATH : ${{ github.workspace }}/.openblas
197
+ run : |
198
+ spin build -- -Dallow-noblas=true
199
+
200
+ - name : Test
201
+ run : |
202
+ spin test -j2 -m full -- --timeout=600 --durations=10
203
+
204
+ # Meson Log on failure
205
+ - name : Meson Log
206
+ if : always()
207
+ run : cat build/meson-logs/meson-log.txt
167
208
168
209
benchmark :
169
210
needs : [smoke_test]
Original file line number Diff line number Diff line change @@ -106,6 +106,42 @@ jobs:
106
106
107
107
- uses : ./.github/meson_actions
108
108
name : Build/Test against gcc-10
109
+ # Add ARM64-specific SIMD tests
110
+ arm64_simd :
111
+ if : github.repository == 'numpy/numpy'
112
+ needs : [baseline_only]
113
+ runs-on : ubuntu-22.04-arm
114
+ strategy :
115
+ fail-fast : false
116
+ matrix :
117
+ config :
118
+ - name : " baseline only"
119
+ args : " -Dallow-noblas=true -Dcpu-dispatch=none"
120
+ - name : " with NEON"
121
+ args : " -Dallow-noblas=true -Dcpu-baseline=neon"
122
+ - name : " with ASIMD"
123
+ args : " -Dallow-noblas=true -Dcpu-baseline=asimd"
124
+ - name : " native"
125
+ args : " -Dallow-noblas=true -Dcpu-baseline=native -Dcpu-dispatch=none"
126
+ name : " ARM64 SIMD - ${{ matrix.config.name }}"
127
+ steps :
128
+ - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
129
+ with :
130
+ submodules : recursive
131
+ fetch-tags : true
132
+ - uses : actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0
133
+ with :
134
+ python-version : ' 3.11'
135
+ - name : Install dependencies
136
+ run : |
137
+ python -m pip install -r requirements/build_requirements.txt
138
+ python -m pip install pytest pytest-xdist hypothesis typing_extensions pytest-timeout
139
+ - name : Build
140
+ run : |
141
+ spin build -- ${{ matrix.config.args }}
142
+ - name : Test
143
+ run : |
144
+ spin test -- --timeout=600 --durations=10
109
145
110
146
specialize :
111
147
needs : [baseline_only]
Original file line number Diff line number Diff line change @@ -21,48 +21,6 @@ modified_clone: &MODIFIED_CLONE
21
21
fi
22
22
23
23
24
- linux_aarch64_test_task :
25
- use_compute_credits : $CIRRUS_USER_COLLABORATOR == 'true'
26
- compute_engine_instance :
27
- image_project : cirrus-images
28
- image : family/docker-builder-arm64
29
- architecture : arm64
30
- platform : linux
31
- cpu : 1
32
- memory : 4G
33
-
34
- << : *MODIFIED_CLONE
35
-
36
- ccache_cache :
37
- folder : .ccache
38
- populate_script :
39
- - mkdir -p .ccache
40
- fingerprint_key : ccache-linux_aarch64
41
-
42
- prepare_env_script : |
43
- apt-get update
44
- apt-get install -y --no-install-recommends software-properties-common gcc g++ gfortran pkg-config ccache
45
- apt-get install -y --no-install-recommends python3.11 python3.11-venv libopenblas-dev libatlas-base-dev liblapack-dev
46
-
47
- # python3.11 -m ensurepip --default-pip --user
48
- ln -s $(which python3.11) python
49
-
50
- # put ccache and python on PATH
51
- export PATH=/usr/lib/ccache:$PWD:$PATH
52
- echo "PATH=$PATH" >> $CIRRUS_ENV
53
- echo "CCACHE_DIR=$PWD/.ccache" >> $CIRRUS_ENV
54
-
55
- pip install -r requirements/build_requirements.txt
56
- pip install -r requirements/test_requirements.txt
57
-
58
- build_script : |
59
- spin build -- -Dallow-noblas=true
60
-
61
- test_script : |
62
- spin test -j 1
63
- ccache -s
64
-
65
-
66
24
freebsd_test_task :
67
25
use_compute_credits : $CIRRUS_USER_COLLABORATOR == 'true'
68
26
compute_engine_instance :
You can’t perform that action at this time.
0 commit comments