Martin Kroeker
71d33c952d
Typo fix
2020-08-19 17:44:23 +02:00
Martin Kroeker
6a3c074786
-march=cooperlake requires gcc10
2020-08-19 17:22:12 +02:00
Martin Kroeker
430f741b30
-march=cooperlake requires gcc10
2020-08-19 17:17:53 +02:00
Chen, Guobing
e740c4873d
Enable COOPERLAKE build target
...
Enable new build target platform -- COOPERLAKE. This target platform
supports all the SKYLAKEX supported ISAs + avx512bf16. So all the
SKYLAKEX specific kernels/drivers and related code are now extended
to be also active on COOPERLAKE. Besides, new BF16 related kernels
are active under this target.
2020-08-13 06:18:00 +08:00
Martin Kroeker
cb097beba2
Merge pull request #2741 from martin-frbg/issue2739
...
Adjust A53 SGEMM parameters to reflect recent switch to 8x8 kernel
2020-07-29 10:01:14 +02:00
Martin Kroeker
64e2e4aaf3
missing braces
2020-07-27 20:19:22 +00:00
Martin Kroeker
921ec4e9e2
Adjust A53 SGEMM parameters to reflect move to 8x8 kernel
2020-07-27 19:54:46 +00:00
Ashwin Sekhar T K
4e1be0e481
ARM64: Add THUNDERX3T110 Target
2020-07-26 23:32:24 -07:00
Martin Kroeker
9e21a100e3
Add trivial check for stdatomic.h
2020-07-20 22:52:09 +00:00
Martin Kroeker
9d000ecaa2
include CheckLanguage module
2020-07-16 22:36:35 +00:00
Martin Kroeker
a847d00366
handle missing lack of fortran compiler more gracefully
2020-07-16 22:17:39 +00:00
Martin Kroeker
6eaeb01263
Merge pull request #2658 from RajalakshmiSR/p10
...
powerpc: Add support for future processor
2020-06-23 00:02:37 +02:00
Martin Kroeker
6876221cf3
Remove optimization level limit for flang again and add -fno-unroll-loops for AOCC flang 2.x instead
2020-06-14 17:40:24 +02:00
Martin Kroeker
1dd712131e
Fix spelling of flang option -Mrecursive and add -Kieee
2020-06-14 00:09:31 +02:00
Rajalakshmi Srinivasaraghavan
9fe930f205
powerpc: Add support for future processor
...
This is the initial patch to support build infrastructure
for POWER10 architecture.
2020-06-11 15:47:20 -05:00
Martin Kroeker
3ce469a34f
Limit optimization level to O1 for flang and add -frecursive
2020-06-09 16:11:13 +02:00
Martin Kroeker
79cd69fea4
Merge pull request #2644 from martin-frbg/cmake-maxstack
...
Add CMAKE support for MAX_STACK_ALLOC setting
2020-06-05 08:33:48 +02:00
Martin Kroeker
bb12c2c854
Limit MAX_STACK_ALLOC availability to non-Wndows
2020-06-04 19:07:27 +02:00
Martin Kroeker
6e97df7b47
Add CMAKE support for MAX_STACK_ALLOC setting
2020-06-04 14:45:31 +02:00
Martin Kroeker
4db00121dc
Disable EXPRECISION and add -lm on OSX (same as the BSDs and Linux)
2020-05-31 12:39:36 +02:00
Martin Kroeker
cd10b35fe9
Handle trailing spaces and empty condition variables
2020-05-09 13:42:33 +02:00
Martin Kroeker
5dd14e3d48
Make building the bfloat16 functions conditional on option BUILD_HALF ( #2590 )
...
* make building the bfloat16 BLAS functions conditional on BUILD_HALF
* pass the BUILD_HALF option to gensymbol
* Pass BUILD_HALF as a compiler define for dynamic_arch builds
2020-05-01 09:58:30 +02:00
Martin Kroeker
3bd56846bb
Silence a debug message
2020-04-27 16:27:09 +02:00
Martin Kroeker
e7bbdfdf84
Have CMAKE parse conditional lines in KERNEL files
...
Supports ifeq and ifneq, but requires both to have an else branch
2020-04-27 15:20:03 +02:00
Martin Kroeker
70869d571f
Quote include paths for getarch to protect any embedded spaces
2020-04-24 10:30:44 +02:00
Martin Kroeker
4f70512b97
Update kernel.cmake
2020-04-19 08:10:26 +02:00
Martin Kroeker
d0737b0142
Update kernel.cmake
2020-04-18 21:36:28 +02:00
Martin Kroeker
a83a59b038
Use generic kernels for ishama,shasum,shdot,shrot
2020-04-18 15:53:51 +02:00
Martin Kroeker
0a19bd813c
Use generic codes for shamax and shcopy
2020-04-18 12:52:51 +02:00
Martin Kroeker
f361de30a3
Use generic axpy.c for SHAXPY as x86 lacks saxpy.c
2020-04-18 11:07:16 +02:00
Martin Kroeker
9f6d6f6cb6
use saxpy.c instead of axpy.S for SHAXPY
2020-04-17 22:27:58 +02:00
Rajalakshmi Srinivasaraghavan
22bb50fb81
cmake fixes
2020-04-17 13:35:17 -05:00
Rajalakshmi Srinivasaraghavan
7eb55504b1
RFC : Add half precision gemm for bfloat16 in OpenBLAS
...
This patch adds support for bfloat16 data type matrix multiplication kernel.
For architectures that don't support bfloat16, it is defined as unsigned short
(2 bytes). Default unroll sizes can be changed as per architecture as done for
SGEMM and for now 8 and 4 are used for M and N. Size of ncopy/tcopy can be
changed as per architecture requirement and for now, size 2 is used.
Added shgemm in kernel/power/KERNEL.POWER9 and tested in powerpc64le and
powerpc64. For reference, added a small test compare_sgemm_shgemm.c to compare
sgemm and shgemm output.
This patch does not cover OpenBLAS test, benchmark and lapack tests for shgemm.
Complex type implementation can be discussed and added once this is approved.
2020-04-14 14:55:08 -05:00
Martin Kroeker
a05243d0f2
ifort and pgfort need "recursive" for compiling LAPACK as well
...
as shown in Reference-LAPACK issue 401 (their PR 403)
2020-04-01 15:38:07 +02:00
Martin Kroeker
8c7c1395da
Merge pull request #2521 from martin-frbg/cm-avx512
...
Use proper extension on the avx512 testcase filename
2020-03-22 01:03:42 +01:00
Martin Kroeker
1d9773b800
Use proper extension on the avx512 testcase filename
...
The need to call it .tmp existed only when it was generated by a tmpfile call, and the "-x c" option to tell the compiler it is actually a C source is not universally supported (this broke the test with clang-cl at least)
2020-03-20 23:05:53 +01:00
Martin Kroeker
6d54c94760
Make ifort on Windows create lowercase symbols with appended underscore
...
tentative fix for #2472
2020-03-20 01:08:10 +01:00
مهدي شينون (Mehdi Chinoune)
21f6c4b5a9
fixes #2480
2020-03-02 17:22:28 +01:00
Ali Saidi
c623a965f9
Add Neoverse-N1 core
...
The implementation is a hybird of the ARMV8 one with some of the
improved TX2 rountines along with specifying -march=v8.2-a
2020-02-29 03:22:04 +00:00
Martin Kroeker
ca4f7dceff
Add parameters for EMAG8180 DYNAMIC_ARCH support with cmake
2020-02-24 20:23:18 +01:00
Martin Kroeker
1ddf9f1067
Add EMAG8180 to arm64 DYNAMIC_ARCH list for cmake
2020-02-24 20:16:18 +01:00
Martin Kroeker
7f0d523b42
Make BUFFER_SIZE configurable
2020-02-09 23:32:57 +01:00
Martin Kroeker
8dc9fd4dfe
Add -march option for AVX512
2020-01-30 12:41:18 +01:00
Martin Kroeker
375b1875c8
[WIP] Update LAPACK to 3.9.0 ( #2353 )
...
* Update make.inc entries for LAPACK 3.9.0
Reference-LAPACK PR 347 changed some variable names and relative paths
* Update LAPACK to 3.9.0
* Add new functions from LAPACK 3.9.0
* Add new functions from LAPACK 3.9.0
* Restore LOADER command
as it makes it easier to specify pthread as needed
* Restore LOADER
* Restore EIG/LIN prefixes in cmdbase
* add binary path to lapack_testing.py call
* Restore OpenMP version check
* Restore OpenMP version check
* Restore fix for out-of-bounds array accesses
from #2096
2020-01-01 13:18:53 +01:00
Martin Kroeker
a4896b5538
Update DYNAMIC_ARCH support for ARM64 and PPC ( #2332 )
...
* Update DYNAMIC_ARCH list of ARM64 targets for gmake
* Update arm64 cpu list for runtime detection
* Update DYNAMIC_ARCH list of ARM64 targets for cmake and add POWERPC targets
2019-12-04 11:06:03 +01:00
k.dunikowski
8691825944
Fixed a minor cmake problem, occuring when DYNAMIC_CORE=ON and CMAKE_C_FLAGS was empty
2019-10-28 08:51:05 +01:00
Martin Kroeker
eb45eb6942
Fix C compiler handling and BINARY=32 mode in CMAKE builds ( #2248 )
...
* Fix compiler identification and option setting
* Handle BINARY=32 option on X86_64
* Add xGEMM3M unroll parameters for crossbuild-target CORE2
* Replace bogus mingw64/32bit CI job with actual 32bit build
mingw64 is not multilib-capable, so using an x86_64-mingw with BINARY=32 in the CI was not going to work anyway (but build passed while BINARY=32 was ignored).
2019-09-10 08:27:06 +02:00
Martin Kroeker
fde8a8e6a0
Improve cmake build behaviour with non-host cpu targets ( #2246 )
...
1. Supply appropriate values for C/Z GEMM unroll when cross-compiling for CORE2 or ARMV7
2. Add the required xLOCAL_BUFFER_SIZE parameters for cross-compiling CORE2
3. Add -DFORCE_<target> option to getarch when building with -DTARGET=target
for #2245
2019-09-03 22:41:17 +02:00
Martin Kroeker
1fec0570f6
Add cgemm and zgemm unroll factors for core2
2019-09-02 15:03:45 +02:00
Martin Kroeker
bf0d92a310
Add arch data for cross-compiling to CORE2
...
for #2235
2019-08-28 17:35:56 +02:00
Martin Kroeker
e3d846ab57
Do not use -march=native with the PGI compiler
2019-08-16 08:58:10 +02:00
Tyler Reddy
3f6ab1582a
MAINT: remove legacy CMake endif()
...
* clean up a case where CMake endif()
contained the conditional used in the
if(), which is no longer needed /
discouraged since our minimum required
CMake version supports the modern syntax
2019-07-22 21:24:57 -06:00
Martin Kroeker
8fb76134bc
Mingw32 needs leading underscore on object names
...
(also copy BUNDERSCORE settings for FORTRAN from the corresponding Makefile)
2019-07-06 15:07:15 +02:00
Martin Kroeker
04d671aae2
Make disabling DYNAMIC_ARCH on unsupported systems work
...
needs to be unset in the cache for the change to have any effect
2019-07-06 15:05:04 +02:00
Martin Kroeker
f69a0be712
Add getarch flags to disable AVX on x86
...
(and other small fixes to match Makefile behaviour)
2019-07-06 15:02:39 +02:00
Martin Kroeker
ece0bfb881
Merge pull request #2158 from martin-frbg/issue2143
...
Remove any inadvertent use of -march=native from DYNAMIC_ARCH builds
2019-06-10 14:08:11 +02:00
Martin Kroeker
1f4b6a5d5d
Remove any inadvertent use of -march=native from DYNAMIC_ARCH builds
...
from #2143 , -march=native precludes use of more specific options like -march=skylake-avx512 in individual kernels, and defeats the purpose of dynamic arch anyway.
2019-06-10 09:50:13 +02:00
Martin Kroeker
be8f70d269
Merge pull request #2157 from martin-frbg/2154-2
...
Add gfortran workaround for potential ABI violation
2019-06-09 12:19:08 +02:00
Martin Kroeker
e674e1c735
Update fc.cmake
2019-06-09 09:31:13 +02:00
Martin Kroeker
6ca898b63b
Add gfortran workaround for potential ABI violation
...
for #2154
2019-06-08 23:17:03 +02:00
Michael Lass
7a9a4dbc4f
Fix detection of AVX512 capable compilers in getarch
...
21eda8b5
introduced a check in getarch.c to test if the compiler is capable of
AVX512. This check currently fails, since the used __AVX2__ macro is only
defined if getarch itself was compiled with AVX2/AVX512 support. Make sure this
is the case by building getarch with -march=native on x86_64. It is only
supposed to run on the build host anyway.
2019-06-05 17:30:56 +02:00
Martin Kroeker
1e52572be3
Add option USE_LOCKING for single-threaded build with locking support
2019-05-15 23:19:30 +02:00
luz.paz
daf2fec12d
Misc. typo fixes
...
Found via `codespell -q 3 -w -L ith,als,dum,nd,amin,nto,wis,ba -S ./relapack,./kernel,./lapack-netlib`
2019-04-29 17:03:56 -04:00
Martin Kroeker
ccfb7ead15
Merge pull request #2072 from martin-frbg/sum
...
Add (C)BLAS extension ?sum
2019-04-23 20:11:36 +02:00
Martin Kroeker
e06b8438b4
Merge pull request #2080 from martin-frbg/issue2075
...
Add -lm and disable EXPRECISION support on *BSD
2019-04-02 21:40:58 +02:00
Martin Kroeker
9229d6859b
Add -lm and disable EXPRECISION support on *BSD
...
fixes #2075
2019-04-02 09:38:18 +02:00
Martin Kroeker
d17da6c6a4
Add cmake defaults for ?sum kernels
2019-03-31 11:57:01 +02:00
Martin Kroeker
1679de5e59
Detect 32bit environment on 64bit ARM hardware
...
for #2056 , using same approach as #2058
2019-03-31 10:50:43 +02:00
Sacha
c3e30b2bc2
Change 64-bit detection as explained in #2056
2019-03-13 23:21:54 +10:00
Martin Kroeker
fd34820b99
Fix AVX512 test always returning false due to missing compiler option
2019-02-25 17:58:31 +01:00
Martin Kroeker
5952e586ce
Support DYNAMIC_LIST option in cmake
...
e.g. cmake -DDYNAMIC_ARCH=1 -DDYNAMIC_LIST="NEHALEM;HASWELL;ZEN" ..
original issue was #1639
2019-02-05 23:51:40 +01:00
Martin Kroeker
58dd7e4501
Change ARMV8 target to ARMV7 for BINARY=32
2019-01-26 17:52:33 +01:00
Martin Kroeker
802f0dbde1
More fixes for cross-compiling ARM64 targets
...
Fixed core naming for DYNAMIC_ARCH. Corrected GEMM_DEFAULT entries and added SYMV_P. Replaced outdated VULCAN define for ThunderX2T99 with ARMV8 to get basic definitions back. For issue #1908
2019-01-03 22:17:31 +01:00
Martin Kroeker
20d1aad13f
Fix missing quotes around thunderx targets
2019-01-02 20:15:35 +01:00
Martin Kroeker
e1eab96502
Merge pull request #1931 from martin-frbg/pr1921
...
Add -mavx2 to TARGET=HASWELL builds
2018-12-23 23:15:54 +01:00
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
Hank Anderson
a6116e5859
Added some more complex-only objects.
2015-02-22 17:49:28 -06:00
Hank Anderson
8a143516e3
Added alternate_name to a couple of the name mangling schemes.
...
Added zherk_k sources to driver/level3.
2015-02-20 17:03:33 -06:00
Hank Anderson
714638c187
Added some TRMM objects for complex types.
2015-02-19 16:11:51 -06:00
Hank Anderson
e27c372e53
Fixed reuse of float_char from parent loop.
...
Fixed in/it/on/otcopy names.
2015-02-19 13:53:29 -06:00
Hank Anderson
f3f2b3d768
Added complex and single netlib-lapack fortran sources to lapack.cmake.
2015-02-19 12:26:11 -06:00
Hank Anderson
43725b82c5
ParseMakefileVars now replaces Makefile vars with CMake vars.
2015-02-18 12:23:17 -06:00
Hank Anderson
cebc07cebd
ParseMakefileVars now recursively parses included makefiles.
2015-02-17 22:09:41 -06:00
Hank Anderson
33c5e8db7f
Added a helper function for setting the L1 kernel defaults.
...
Added loop to build objects with different KERNEL defines.
2015-02-17 21:36:23 -06:00
Hank Anderson
67e39bd8fb
Added mangled complex filenames to interface and lapack CMakeLists.txt.
2015-02-17 13:12:30 -06:00
Hank Anderson
9eb1499095
Added another param to GenerateNamedObjects to mangle complex source names.
...
There are a lot of sources for complex float types that are the same
names as the real sources, except with z prepended.
2015-02-17 10:30:28 -06:00
Hank Anderson
4662a0b13a
Changed generate functions to iterate through a list of float types.
...
This will generate obj files for SINGLE/DOUBLE/COMPLEX/DOUBLE COMPLEX.
2015-02-15 17:44:37 -06:00
Hank Anderson
c94fe71278
Removed incoming-stack-boundary for MSVC.
...
Made float type optional for GenerateNamedObjects.
Called GenerateNamedObjects for a couple of driver/others files that
needed NAME/CNAME set.
2015-02-11 10:54:14 -06:00
Hank Anderson
d60b49e5c5
Turned off uninizialized variable warning when compiling lapack-netlib.
2015-02-10 14:36:43 -06:00
Hank Anderson
64b5a0ef84
Added AUX files from lapack-netlib.
2015-02-10 14:29:05 -06:00
Hank Anderson
162791e30e
Added common objects from kernel Makefile.
2015-02-10 12:42:05 -06:00
Hank Anderson
96cf6779ca
Added DLA sources from lapack-netlib.
...
Can't use the lapack-netlib cmake files, since they are designed to
build a complete lapack/blas library. They have their own fortran
detection and flag setup and so on. Instead I'll just recreate the
makefiles I need.
Fixed a typo in the NAME defines.
2015-02-10 11:01:01 -06:00
Hank Anderson
e8c39138c6
Removed return value from GenerateNamedObjects.
...
It sets DBLAS_OBJS directly to save a bunch of list appending in the
CMakeLists.txt files.
2015-02-09 12:28:09 -06:00
Hank Anderson
7fa5c4e2fd
Fixed some case issues with ARCH.
...
Added some kernel and driver/others objects.
2015-02-08 15:29:18 -06:00
Hank Anderson
6b5d26e07b
Added SMP sources to level2 CMakeLists.txt.
2015-02-06 16:52:19 -06:00
Hank Anderson
13d2d48e67
Added yet another naming scheme for lapack functions.
2015-02-06 13:42:20 -06:00
Hank Anderson
189fadfde0
Started implementing kernel/Makefile in cmake.
2015-02-05 21:05:11 -06:00
Hank Anderson
627d5e7401
Added SMP objects to driver/level3.
2015-02-05 12:22:48 -06:00
Hank Anderson
943fa2fb58
Fixed object names in level2.
2015-02-05 10:49:11 -06:00
Hank Anderson
1b62a4f3c9
Changed some function parameters to optional.
2015-02-05 09:39:40 -06:00
Hank Anderson
461e691127
Codes when define is absent are now a parameter to AllCombinations.
...
The level3 object names should now be correct.
2015-02-05 09:23:47 -06:00