Skip to content

Commit 4aa2d89

Browse files
committed
Merge branch 'develop' into risc-v
2 parents d93cf11 + ddcbed6 commit 4aa2d89

File tree

1,686 files changed

+142347
-25780
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,686 files changed

+142347
-25780
lines changed

.drone.yml

Lines changed: 143 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,143 @@
1+
---
2+
kind: pipeline
3+
name: arm64_gcc_make
4+
5+
platform:
6+
os: linux
7+
arch: arm64
8+
9+
steps:
10+
- name: Build and Test
11+
image: ubuntu:19.04
12+
environment:
13+
CC: gcc
14+
COMMON_FLAGS: 'DYNAMIC_ARCH=1 TARGET=ARMV8 NUM_THREADS=32'
15+
commands:
16+
- echo "MAKE_FLAGS:= $COMMON_FLAGS"
17+
- apt-get update -y
18+
- apt-get install -y make $CC gfortran perl
19+
- $CC --version
20+
- make QUIET_MAKE=1 $COMMON_FLAGS
21+
- make -C test $COMMON_FLAGS
22+
- make -C ctest $COMMON_FLAGS
23+
- make -C utest $COMMON_FLAGS
24+
25+
---
26+
kind: pipeline
27+
name: arm32_gcc_make
28+
29+
platform:
30+
os: linux
31+
arch: arm
32+
33+
steps:
34+
- name: Build and Test
35+
image: ubuntu:19.04
36+
environment:
37+
CC: gcc
38+
COMMON_FLAGS: 'DYNAMIC_ARCH=1 TARGET=ARMV6 NUM_THREADS=32'
39+
commands:
40+
- echo "MAKE_FLAGS:= $COMMON_FLAGS"
41+
- apt-get update -y
42+
- apt-get install -y make $CC gfortran perl
43+
- $CC --version
44+
- make QUIET_MAKE=1 $COMMON_FLAGS
45+
- make -C test $COMMON_FLAGS
46+
- make -C ctest $COMMON_FLAGS
47+
- make -C utest $COMMON_FLAGS
48+
49+
---
50+
kind: pipeline
51+
name: arm64_clang_make
52+
53+
platform:
54+
os: linux
55+
arch: arm64
56+
57+
steps:
58+
- name: Build and Test
59+
image: ubuntu:18.04
60+
environment:
61+
CC: clang
62+
COMMON_FLAGS: 'DYNAMIC_ARCH=1 TARGET=ARMV8 NUM_THREADS=32'
63+
commands:
64+
- echo "MAKE_FLAGS:= $COMMON_FLAGS"
65+
- apt-get update -y
66+
- apt-get install -y make $CC gfortran perl
67+
- $CC --version
68+
- make QUIET_MAKE=1 $COMMON_FLAGS
69+
- make -C test $COMMON_FLAGS
70+
- make -C ctest $COMMON_FLAGS
71+
- make -C utest $COMMON_FLAGS
72+
73+
---
74+
kind: pipeline
75+
name: arm32_clang_cmake
76+
77+
platform:
78+
os: linux
79+
arch: arm
80+
81+
steps:
82+
- name: Build and Test
83+
image: ubuntu:18.04
84+
environment:
85+
CC: clang
86+
CMAKE_FLAGS: '-DDYNAMIC_ARCH=1 -DTARGET=ARMV6 -DNUM_THREADS=32 -DNOFORTRAN=ON -DBUILD_WITHOUT_LAPACK=ON'
87+
commands:
88+
- echo "CMAKE_FLAGS:= $CMAKE_FLAGS"
89+
- apt-get update -y
90+
- apt-get install -y make $CC g++ perl cmake
91+
- $CC --version
92+
- mkdir build && cd build
93+
- cmake $CMAKE_FLAGS ..
94+
- make -j
95+
- ctest -V
96+
97+
---
98+
kind: pipeline
99+
name: arm64_gcc_cmake
100+
101+
platform:
102+
os: linux
103+
arch: arm64
104+
105+
steps:
106+
- name: Build and Test
107+
image: ubuntu:18.04
108+
environment:
109+
CC: gcc
110+
CMAKE_FLAGS: '-DDYNAMIC_ARCH=1 -DTARGET=ARMV8 -DNUM_THREADS=32 -DNOFORTRAN=ON -DBUILD_WITHOUT_LAPACK=ON'
111+
commands:
112+
- echo "CMAKE_FLAGS:= $CMAKE_FLAGS"
113+
- apt-get update -y
114+
- apt-get install -y make $CC g++ perl cmake
115+
- $CC --version
116+
- mkdir build && cd build
117+
- cmake $CMAKE_FLAGS ..
118+
- make -j
119+
- ctest -V
120+
121+
---
122+
kind: pipeline
123+
name: arm64_clang_cmake
124+
125+
platform:
126+
os: linux
127+
arch: arm64
128+
129+
steps:
130+
- name: Build and Test
131+
image: ubuntu:18.04
132+
environment:
133+
CC: clang
134+
CMAKE_FLAGS: '-DDYNAMIC_ARCH=1 -DTARGET=ARMV8 -DNUM_THREADS=32 -DNOFORTRAN=ON -DBUILD_WITHOUT_LAPACK=ON'
135+
commands:
136+
- echo "CMAKE_FLAGS:= $CMAKE_FLAGS"
137+
- apt-get update -y
138+
- apt-get install -y make $CC g++ perl cmake
139+
- $CC --version
140+
- mkdir build && cd build
141+
- cmake $CMAKE_FLAGS ..
142+
- make -j
143+
- ctest -V
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
# Only the "head" branch of the OpenBLAS package is tested
2+
3+
on:
4+
push:
5+
paths:
6+
- '**/nightly-Homebrew-build.yml'
7+
pull_request:
8+
branches:
9+
- develop
10+
paths:
11+
- '**/nightly-Homebrew-build.yml'
12+
schedule:
13+
- cron: 45 7 * * *
14+
# This is 7:45 AM UTC daily, late at night in the USA
15+
16+
# Since push and pull_request will still always be building and testing the `develop` branch,
17+
# it only makes sense to test if this file has been changed
18+
19+
name: Nightly-Homebrew-Build
20+
jobs:
21+
build-OpenBLAS-with-Homebrew:
22+
runs-on: macos-latest
23+
env:
24+
HOMEBREW_DEVELOPER: "ON"
25+
HOMEBREW_DISPLAY_INSTALL_TIMES: "ON"
26+
HOMEBREW_NO_ANALYTICS: "ON"
27+
HOMEBREW_NO_AUTO_UPDATE: "ON"
28+
HOMEBREW_NO_BOTTLE_SOURCE_FALLBACK: "ON"
29+
HOMEBREW_NO_INSTALL_CLEANUP: "ON"
30+
31+
steps:
32+
- name: Random delay for cron job
33+
run: |
34+
delay=$(( RANDOM % 600 ))
35+
printf 'Delaying for %s seconds on event %s' ${delay} "${{ github.event_name }}"
36+
sleep ${delay}
37+
if: github.event_name == 'schedule'
38+
39+
- uses: actions/checkout@v2
40+
# This isn't even needed, technically. Homebrew will get `develop` via git
41+
42+
- name: Update Homebrew
43+
if: github.event_name != 'pull_request'
44+
run: brew update || true
45+
46+
- name: Install prerequisites
47+
run: brew install --fetch-HEAD --HEAD --only-dependencies --keep-tmp openblas
48+
49+
- name: Install and bottle OpenBLAS
50+
run: brew install --fetch-HEAD --HEAD --build-bottle --keep-tmp openblas
51+
# the HEAD flags tell Homebrew to build the develop branch fetch via git
52+
53+
- name: Create bottle
54+
run: |
55+
brew bottle -v openblas
56+
mkdir bottles
57+
mv *.bottle.tar.gz bottles
58+
59+
- name: Upload bottle
60+
uses: actions/upload-artifact@v1
61+
with:
62+
name: openblas--HEAD.catalina.bottle.tar.gz
63+
path: bottles
64+
65+
- name: Show linkage
66+
run: brew linkage -v openblas
67+
68+
- name: Test openblas
69+
run: brew test --HEAD --verbose openblas
70+
71+
- name: Audit openblas formula
72+
run: |
73+
brew audit --strict openblas
74+
brew cat openblas
75+
76+
- name: Post logs on failure
77+
if: failure()
78+
run: brew gist-logs --with-hostname -v openblas

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,4 +87,5 @@ build.*
8787
*.swp
8888
benchmark/*.goto
8989
benchmark/smallscaling
90-
90+
CMakeCache.txt
91+
CMakeFiles/*

.travis.yml

Lines changed: 27 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,10 @@ dist: precise
44
sudo: true
55
language: c
66

7-
jobs:
7+
matrix:
88
include:
99
- &test-ubuntu
1010
os: linux
11-
stage: test
1211
compiler: gcc
1312
addons:
1413
apt:
@@ -18,14 +17,23 @@ jobs:
1817
- COMMON_FLAGS="DYNAMIC_ARCH=1 TARGET=NEHALEM NUM_THREADS=32"
1918
script:
2019
- set -e
21-
- travis_wait 45 make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE
20+
- make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE
2221
- make -C test $COMMON_FLAGS $BTYPE
2322
- make -C ctest $COMMON_FLAGS $BTYPE
2423
- make -C utest $COMMON_FLAGS $BTYPE
2524
env:
2625
- TARGET_BOX=LINUX64
2726
- BTYPE="BINARY=64"
2827

28+
- <<: *test-ubuntu
29+
os: linux-ppc64le
30+
before_script:
31+
- COMMON_FLAGS="DYNAMIC_ARCH=1 TARGET=POWER8 NUM_THREADS=32"
32+
env:
33+
# for matrix annotation only
34+
- TARGET_BOX=PPC64LE_LINUX
35+
- BTYPE="BINARY=64 USE_OPENMP=1"
36+
2937
- <<: *test-ubuntu
3038
env:
3139
- TARGET_BOX=LINUX64
@@ -59,7 +67,6 @@ jobs:
5967
- BTYPE="BINARY=32"
6068

6169
- os: linux
62-
stage: test
6370
compiler: gcc
6471
addons:
6572
apt:
@@ -80,13 +87,12 @@ jobs:
8087
# that don't require sudo.
8188
- &test-alpine
8289
os: linux
83-
stage: test
8490
dist: trusty
8591
sudo: true
8692
language: minimal
8793
before_install:
88-
- "wget 'https://raw.githubusercontent.com/alpinelinux/alpine-chroot-install/v0.6.0/alpine-chroot-install' \
89-
&& echo 'a827a4ba3d0817e7c88bae17fe34e50204983d1e alpine-chroot-install' | sha1sum -c || exit 1"
94+
- "wget 'https://raw.githubusercontent.com/alpinelinux/alpine-chroot-install/v0.9.0/alpine-chroot-install' \
95+
&& echo 'e5dfbbdc0c4b3363b99334510976c86bfa6cb251 alpine-chroot-install' | sha1sum -c || exit 1"
9096
- alpine() { /alpine/enter-chroot -u "$USER" "$@"; }
9197
install:
9298
- sudo sh alpine-chroot-install -p 'build-base gfortran perl linux-headers'
@@ -120,11 +126,10 @@ jobs:
120126
- <<: *test-alpine
121127
env:
122128
- TARGET_BOX=LINUX64_MUSL
123-
- BTYPE="BINARY=64 NO_AFFINITY=1 USE_OPENMP=0 NO_LAPACK=0 TARGET=core2"
129+
- BTYPE="BINARY=64 NO_AFFINITY=1 USE_OPENMP=0 NO_LAPACK=0 TARGET=CORE2"
124130

125131
- &test-cmake
126132
os: linux
127-
stage: test
128133
compiler: clang
129134
addons:
130135
apt:
@@ -153,20 +158,27 @@ jobs:
153158

154159
- &test-macos
155160
os: osx
156-
stage: test
157-
osx_image: xcode8
161+
osx_image: xcode10.1
158162
before_script:
159-
- COMMON_FLAGS="DYNAMIC_ARCH=1 TARGET=NEHALEM NUM_THREADS=32"
163+
- COMMON_FLAGS="DYNAMIC_ARCH=1 NUM_THREADS=32"
160164
- brew update
161-
- brew install gcc # for gfortran
165+
- brew install gcc@8 # for gfortran
162166
script:
163167
- travis_wait 45 make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE
164168
env:
165-
- BTYPE="BINARY=64 INTERFACE64=1"
169+
- BTYPE="TARGET=NEHALEM BINARY=64 INTERFACE64=1 FC=gfortran-8"
166170

167171
- <<: *test-macos
172+
osx_image: xcode10.0
168173
env:
169-
- BTYPE="BINARY=32"
174+
- BTYPE="TARGET=NEHALEM BINARY=32 NOFORTRAN=1"
175+
176+
- <<: *test-macos
177+
osx_image: xcode10.1
178+
env:
179+
- CC="/Applications/Xcode-10.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang"
180+
- CFLAGS="-O2 -Wno-macro-redefined -isysroot /Applications/Xcode-10.1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.1.sdk -arch arm64 -miphoneos-version-min=10.0"
181+
- BTYPE="TARGET=ARMV8 BINARY=64 HOSTCC=clang NOFORTRAN=1"
170182

171183
# whitelist
172184
branches:

0 commit comments

Comments
 (0)