Martin Kroeker
76b4b8980f
Use -dumpversion with gcc only
2018-12-23 19:08:19 +01:00
Martin Kroeker
49e0f485da
Add -mavx2 for TARGET=HASWELL if compiler supports and requires it
2018-12-23 17:26:09 +01:00
Martin Kroeker
26a3402773
Reflect ARMV8 target definition changes from PR1876
...
and create config target directory for cross-compiles.
2018-12-23 12:26:01 +01:00
Martin Kroeker
133c278ee5
Add DYNAMIC_CORE list for ARM64
...
cf #1908
2018-12-07 17:42:23 +01:00
Martin Kroeker
dceff5542c
Handle Android environments that identify as Linux ( #1898 )
...
* Handle Android environments that identify as Linux
termux terminal emulator does this, causing build failures through missed defines in common.h
2018-12-01 20:56:11 +01:00
Martin Kroeker
081ceb3e02
Propagate version number for openblas_get_config
2018-11-29 00:12:04 +01:00
Andrew
40cce0e353
handle cmake too
2018-11-06 09:45:49 +00:00
Martin Kroeker
2263d3906c
Merge pull request #1812 from martin-frbg/issue1806-2
...
Use KERNEL_DEFINITIONS rather than COMMON_OPTS to pass -march=skylake…
2018-10-11 21:51:31 +02:00
Martin Kroeker
81c9985c3a
Use KERNEL_DEFINITIONS rather than COMMON_OPTS to pass -march=skylake-avx512
2018-10-11 11:03:27 +02:00
Martin Kroeker
56ebc7b53e
Merge pull request #1808 from martin-frbg/issue1806
...
Add -march=skylake-avx512 to CFLAGS when the target is Skylake
2018-10-11 07:48:08 +02:00
Martin Kroeker
8a11ec19d1
Syntax fix
2018-10-10 23:47:35 +02:00
Martin Kroeker
fa53b903db
Add -march=skylake-avx512 to CFLAGS when the target is Skylake
...
Should fix 1806 and #1801
2018-10-10 19:22:01 +02:00
Martin Kroeker
84bcdf9c66
Revert "Add -march=skylake-avx512 when required"
2018-10-10 19:15:32 +02:00
Martin Kroeker
a9b51b8448
Merge pull request #1798 from martin-frbg/cmake-avx512
...
Add -march=skylake-avx512 when required
2018-10-08 21:15:17 +02:00
Martin Kroeker
eba394c711
Add -march=skylake-avx512 when required
...
fixes #1797
2018-10-08 19:18:12 +02:00
Martin Kroeker
02ef20a1e4
Merge pull request #1786 from martin-frbg/immintrin
...
Check for Immintrin.h presence in the AVX512 compatibility test as well
2018-10-04 09:07:09 +02:00
Martin Kroeker
4c3643ed7f
Check availability of immintrin.h in the AVX512 compatibility test
2018-10-04 07:36:49 +02:00
Yuri
2349e15149
Allow to install the 'interfare64' version concurrently with the regular version
2018-09-15 21:00:03 -07:00
Martin Kroeker
b1b743f434
Merge branch 'develop' into interim033
2018-08-25 19:45:19 +02:00
Martin Kroeker
2a589c4b28
Add USE_TLS option to switch between old and new memory.c
2018-08-25 19:36:12 +02:00
Martin Kroeker
25f2d25cfe
Merge pull request #1697 from martin-frbg/issue1696
...
Do not treat WIndows UWB builds as cross-compiling
2018-07-25 19:55:29 +02:00
Martin Kroeker
73131fa30a
Do not treat WIndows UWB builds as cross-compiling
2018-07-24 17:46:33 +02:00
Martin Kroeker
b74aef2816
Add -march=skylake-avx512 to AVX512 compile check and suppress its output
2018-07-03 14:41:44 +02:00
Martin Kroeker
26e1cfb653
Merge pull request #1607 from martin-frbg/dynarch
...
Move some x86_64 DYNAMIC_ARCH targets to new DYNAMIC_OLDER option
2018-06-14 16:52:55 +02:00
Martin Kroeker
02634b549b
Add template for OpenBLASConfig.cmake
2018-06-10 09:25:46 +02:00
Martin Kroeker
1cbd8f3ae4
Move some DYNAMIC_ARCH targets to new DYNAMIC_OLDER option
2018-06-09 16:30:46 +02:00
Martin Kroeker
cf234a0561
Merge pull request #1589 from fenrus75/skylakex
...
Initial support for SkylakeX / AVX512
2018-06-06 22:07:09 +02:00
Martin Kroeker
e4718b1fee
Better AVX512 test case
2018-06-06 16:51:30 +02:00
Martin Kroeker
7fb62aed7e
Check build system support for AVX512 instructions
2018-06-05 23:29:33 +02:00
Arjan van de Ven
99c7bba8e4
Initial support for SkylakeX / AVX512
...
This patch adds the basic infrastructure for adding the SkylakeX (Intel Skylake server)
target. The SkylakeX target will use the AVX512 (AVX512VL level) instruction set,
which brings 2 basic things:
1) 512 bit wide SIMD (2x width of AVX2)
2) 32 SIMD registers (2x the number on AVX2)
This initial patch only contains a trivial transofrmation of the Haswell SGEMM kernel
to AVX512VL; more will follow later but this patch aims to get the infrastructure
in place for this "later".
Full performance tuning has not been done yet; with more registers and wider SIMD
it's in theory possible to retune the kernels but even without that there's an
interesting enough performance increase (30-40% range) with just this change.
2018-06-03 07:58:52 +00:00
Martin Kroeker
6791294312
Merge pull request #1559 from martin-frbg/buildconf
...
Add build-time configuration options to pkgconfig file
2018-05-14 18:49:53 +02:00
Martin Kroeker
7d7564568c
Add build-time configuration options to pkgconfig file
2018-05-14 00:09:35 +02:00
Zhiyong Dang
1b83341d19
Fix race condition in blas_server_omp.c
...
Change-Id: Ic896276cd073d6b41930c7c5a29d66348cd1725d
2018-04-27 17:00:42 +08:00
Sacha
f81815e48a
Fix CMake cross-compiling
...
Without specifying thread count, NUM_THREADS would not be defined and CMake would fail.
This is because core count cannot be determined when cross-compiling.
2018-02-28 10:25:25 +10:00
xoviat
038bfbb86c
CMake: Remove unused wall option when FC=flang
2018-01-26 14:09:48 -06:00
Martin Kroeker
599de9e598
Restore LAPACKE files for Xgeqpf, Xggsvd and Xggsvp
...
These were inadvertently dropped from the list in my PR #1095
2017-12-21 19:43:09 +01:00
Martin Kroeker
0dc291d3fa
Merge pull request #1377 from isuruf/threads
...
Allow overriding NUM_THREADS in cmake
2017-12-01 16:22:35 +01:00
Isuru Fernando
e0ddd7d124
Allow overriding NUM_THREADS
2017-12-01 01:42:45 -06:00
martin
5056a044b2
fix location of lapacke_nancheck
2017-11-24 09:15:20 +01:00
martin
4054d32def
update cmake files
2017-11-24 08:15:40 +01:00
martin
2d52f0f4c3
update cmakefiles for lapack 3.8.0
2017-11-23 21:22:01 +01:00
Ian Henriksen
505dc08635
Update lapacke.cmake with routines added in LAPACK 3.7.0.
2017-11-06 14:43:33 -06:00
Ian Henriksen
61587b0670
Update lapack.cmake with additional routines from LAPACK version 3.7.0.
2017-11-06 14:41:02 -06:00
Ian Henriksen
632fc75d77
Allow using compilers other than gfortran in conjunction with
...
MSVC or clang-cl.
2017-11-06 14:39:12 -06:00
Martin Kroeker
962b20a9bb
Optionally add ReLAPACK to LIB_COMPONENTS
2017-10-12 17:02:01 +02:00
Martin Kroeker
c7a8512d12
Cmake fixes for DYNAMIC_ARCH builds and whitespace in path names ( #1323 )
...
* prebuild.cmake: Put quotes around path names that may contain whitespace
(Copied from alexkaratakis' PR #1295 )
* kernel/CMakeLists.txt: Fix common_lapack header inclusion and DYNAMIC_ARCH generation of ?neg_tcopy and ?laswp_ncopy files
* lapack/CMakeLists.txt: Use correct template for ?laswp_(plus,minus) functions
2017-10-09 23:34:18 +02:00
Sacha
7a867082d8
Fix open_blas.config which was never working out-of-source. Remove need for gen_config_h.exe. If OpenMP is requested, do not silently ignore when it isn't available.
2017-08-23 11:16:24 +10:00
Sacha Refshauge
47ebce4d1a
Clean up, fix old typos. Simplify arch usages. Move system arch check to earlier position.
2017-08-21 00:37:29 +10:00
Sacha Refshauge
69b560751c
Improvements to previous commit (cross-compile).
...
Fix typos and bad if statements discovered in 0.2.20.
2017-08-20 22:50:31 +10:00
Sacha Refshauge
0a7a527a92
Add support for cross compiling.
...
Add support for not having host compiler as CMake cannot detect such a compiler.
Add support for not using getarch.
Successfully builds Android ARMV8. Any target can be added by supplying the TARGET_CORE config in prebuild.cmake.
2017-08-20 20:08:53 +10:00
Sacha Refshauge
6aac06587d
Fix typos and use CMake OpenMP support.
2017-08-17 17:27:01 +10:00
7c1acc07f0
Fix bug that required fortran. Fix bug that needed CXX var. Remove redundant set vars. Fix threading detection. Do not attempt to run code if cross compiling.
2017-08-17 03:32:04 +10:00
38d273ea03
Drop some redundant vars and improve arch detection in CMake.
2017-08-17 02:04:36 +10:00
90a4dab501
Let CMake deal with build type.
2017-08-17 00:35:54 +10:00
Isuru Fernando
d3b677fe87
Add commonobjs
2017-08-07 23:12:40 +05:30
Isuru Fernando
505b218829
Merge remote-tracking branch 'upstream/develop' into dyn
2017-08-06 19:07:00 +05:30
Isuru Fernando
d9346930dd
Merge remote-tracking branch 'upstream/develop' into develop
2017-08-04 07:57:55 +05:30
Isuru Fernando
1d1854032b
Add missing EXCAVATOR
2017-08-02 19:03:04 +05:30
Isuru Fernando
d798487213
Fixes for dynamic_arch. almost there
2017-08-02 17:25:49 +05:30
Isuru Fernando
4260215adf
Support DYNAMIC_ARCH with cmake
2017-08-01 22:25:52 +05:30
Isuru Fernando
89ec2be110
Fix lapacke copying
2017-08-01 15:47:14 +05:30
Isuru Fernando
d245caa49a
Support out-of-source build
2017-08-01 15:16:14 +05:30
Isuru Fernando
7a96499b29
Don't change timestamps
2017-08-01 13:43:59 +05:30
Isuru Fernando
5e0f67c666
Make ARCH variable a CACHE variable
2017-07-29 23:30:15 +05:30
Isuru Fernando
ea1095135e
Ninja complains that file openblas.def does not exist
2017-07-29 21:00:32 +05:30
Isuru Fernando
4c5df489db
clang on windows needs FU=''
2017-07-29 20:59:28 +05:30
Isuru Fernando
dc24914415
check compiler is msvc instead of msvc
2017-07-28 11:49:39 +05:30
Martin Kroeker
ad2462811a
Do not add -lpthread on Android builds ( #1229 )
...
* Do not add -lpthread on Android builds
* Do not add -lpthread on Android cmake builds
2017-07-09 13:15:24 +02:00
Neil Shipp
34513be726
Add Microsoft Windows 10 UWP build support
2017-06-23 13:07:34 -07:00
Neil Shipp
65e56cb29d
Add 64bit support for Microsoft Visual Studio
2017-06-21 13:38:22 -07:00
Paul Osmialowski
42bbe74791
build: LLVM: Add Flang compiler support and enable OpenMP for Clang
...
Signed-off-by: Paul Osmialowski <pawel.osmialowski@arm.com>
2017-05-25 17:03:20 +01:00
David Seifert
ed79a29d87
Use GNUInstallDirs to allow changing target directories
...
* Multi-lib distributions need to change the libdir
which is only portably possible with `GNUInstallDirs`.
* Multi-arch distributions such as Debian and Exherbo
need to be able to change the bindir.
2017-04-16 00:43:47 +02:00
Denis Steckelmacher
c9ff735da6
Add ZEN support (tested for auto-detected static backend)
2017-03-19 15:32:50 +01:00
Martin Kroeker
12e476f7a2
Merge pull request #1124 from martin-frbg/c_check-ppc
...
Update c_check.cmake to label ppc64 as power ARCH
2017-03-10 12:58:38 +01:00
Martin Kroeker
8de40955ad
Update c_check.cmake
2017-03-10 11:45:48 +01:00
Martin Kroeker
43224f7273
Fix misspelling of zlasyf_aa from previous commit
2017-03-10 08:44:49 +01:00
Martin Kroeker
c4ea9eea67
Add cmake template for openblas.pc
2017-02-12 14:38:32 +01:00
Martin Kroeker
d12c8bbcbb
Add zlasyf_aa to lapack.cmake
2017-02-12 13:49:49 +01:00
Martin Kroeker
15f0d65010
Add another bunch of lapack 3.7 functions to cmake list
2017-02-12 01:59:30 +01:00
Martin Kroeker
7d831af1ba
Add LAPACK 3.7 files not mentioned in announcement
2017-02-12 01:37:35 +01:00
Martin Kroeker
ee3e87cf46
Update cmake file list for lapacke 3.7.0
2017-02-12 00:40:16 +01:00
Martin Kroeker
8772c00bb0
Update cmake file list for lapack 3.7.0
2017-02-11 23:11:26 +01:00
Martin Kroeker
357ef3cd8c
Reflect name change of lapacke_mangling.h template
2017-02-11 19:56:02 +01:00
Martin Kroeker
002e646476
Add new functions from LAPACK 3.6.1
2017-02-11 19:54:02 +01:00
John Biddiscombe
053044ae4d
Replace CMAKE_SOURCE_DIR/CMAKE_BINARY_DIR with PROJECT_SOURCE_DIR/PROJECT_BINARY_DIR
...
If OpenBLAS is built using add_subdirectory(OpenBlas) as part of another project
then the paths set by CMAKE_XXX_DIR are relative to the parent project
and not the OpenBLAS project.
2016-05-25 09:13:28 +02:00
Zhang Xianyi
0e2b92e216
Added mising lapacke files for CMake.
2016-02-12 05:28:16 +08:00
Benyu Zhang
4a1263f609
Fix the source paths
2016-02-01 18:32:42 -08:00
Zhang Xianyi
53b6023a6c
Fix cmake bug on MSVC 32-bit.
2015-10-26 14:52:13 -05:00
Zhang Xianyi
309875de3c
Fix cmake bug on x86 32-bit.
...
e.g. Build 32-bit on 64-bit Linux.
cmake -DBINARY=32
2015-10-27 02:54:53 +08:00
Zhang Xianyi
17ee2237c3
Fixed cmake bug with NO_LAPACK=1
2015-08-18 22:43:42 -05:00
Zhang Xianyi
f8eba3d548
Fixed cmake build bugs on Linux.
2015-08-11 16:25:16 -05:00
Zhang Xianyi
40ab5cfc50
Merge branch 'hpanderson_cmake' into cmake
2015-08-11 03:31:55 +08:00
Zhang Xianyi
f874465bb8
Use cmake to build OpenBLAS GENERIC Target on MSVC x86 64-bit.
...
Disable CBLAS and LAPACK.
2015-08-10 14:10:44 -05:00
Hank Anderson
19664f3ef4
Added missing lapacke.cmake file.
2015-08-06 07:40:06 -05:00
Zhang Xianyi
7ac7e147d4
Fixed cmake building bugs on Linux. Disable LAPACK by default.
2015-08-04 04:37:05 +08:00
Hank Anderson
1d183dcda8
Added lapacke sources.
2015-02-25 16:51:08 -06:00
Hank Anderson
504cdb10ed
Added check for MSVC before enabling fortran.
...
Currently forcing gfortran, instead of assuming ifort.
2015-02-24 14:31:45 -06:00
Hank Anderson
a8002b0c5f
Separated getarch ASM file when using MSVC.
2015-02-24 14:31:18 -06:00
Hank Anderson
0d8e227ea7
Changed strategy for setting preprocessor definitions.
...
Instead of generating separate object files for each permutation of
defines for a source file, GenerateNamedObjects now writes an entirely
new source file and inserts the defines as #define c statements.
This solves a problem I ran into with ar.exe where it was refusing to
link objects that had the same filename despite having different paths.
2015-02-24 12:26:33 -06:00
Hank Anderson
1b7f427401
Added conj gemv objects for complex build.
2015-02-23 10:24:31 -06:00