Martin Kroeker
e3d846ab57
Do not use -march=native with the PGI compiler
6 years ago
Martin Kroeker
f69a0be712
Add getarch flags to disable AVX on x86
(and other small fixes to match Makefile behaviour)
6 years ago
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.
6 years ago
Martin Kroeker
1e52572be3
Add option USE_LOCKING for single-threaded build with locking support
6 years ago
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`
6 years ago
Martin Kroeker
5952e586ce
Support DYNAMIC_LIST option in cmake
e.g. cmake -DDYNAMIC_ARCH=1 -DDYNAMIC_LIST="NEHALEM;HASWELL;ZEN" ..
original issue was #1639
6 years ago
Martin Kroeker
58dd7e4501
Change ARMV8 target to ARMV7 for BINARY=32
6 years ago
Martin Kroeker
76b4b8980f
Use -dumpversion with gcc only
6 years ago
Martin Kroeker
49e0f485da
Add -mavx2 for TARGET=HASWELL if compiler supports and requires it
6 years ago
Martin Kroeker
081ceb3e02
Propagate version number for openblas_get_config
6 years ago
Martin Kroeker
81c9985c3a
Use KERNEL_DEFINITIONS rather than COMMON_OPTS to pass -march=skylake-avx512
7 years ago
Martin Kroeker
8a11ec19d1
Syntax fix
7 years ago
Martin Kroeker
fa53b903db
Add -march=skylake-avx512 to CFLAGS when the target is Skylake
Should fix 1806 and #1801
7 years ago
Martin Kroeker
2a589c4b28
Add USE_TLS option to switch between old and new memory.c
7 years ago
Martin Kroeker
1cbd8f3ae4
Move some DYNAMIC_ARCH targets to new DYNAMIC_OLDER option
7 years ago
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.
7 years ago
Zhiyong Dang
1b83341d19
Fix race condition in blas_server_omp.c
Change-Id: Ic896276cd073d6b41930c7c5a29d66348cd1725d
7 years ago
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.
7 years ago
Isuru Fernando
e0ddd7d124
Allow overriding NUM_THREADS
7 years ago
Martin Kroeker
962b20a9bb
Optionally add ReLAPACK to LIB_COMPONENTS
8 years ago
Sacha Refshauge
47ebce4d1a
Clean up, fix old typos. Simplify arch usages. Move system arch check to earlier position.
8 years ago
Sacha Refshauge
69b560751c
Improvements to previous commit (cross-compile).
Fix typos and bad if statements discovered in 0.2.20.
8 years ago
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.
8 years ago
Sacha Refshauge
6aac06587d
Fix typos and use CMake OpenMP support.
8 years ago
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.
8 years ago
38d273ea03
Drop some redundant vars and improve arch detection in CMake.
8 years ago
90a4dab501
Let CMake deal with build type.
8 years ago
Isuru Fernando
4260215adf
Support DYNAMIC_ARCH with cmake
8 years ago
Neil Shipp
65e56cb29d
Add 64bit support for Microsoft Visual Studio
8 years ago
Denis Steckelmacher
c9ff735da6
Add ZEN support (tested for auto-detected static backend)
8 years ago
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.
9 years ago
Zhang Xianyi
53b6023a6c
Fix cmake bug on MSVC 32-bit.
10 years ago
Zhang Xianyi
309875de3c
Fix cmake bug on x86 32-bit.
e.g. Build 32-bit on 64-bit Linux.
cmake -DBINARY=32
10 years ago
Zhang Xianyi
f874465bb8
Use cmake to build OpenBLAS GENERIC Target on MSVC x86 64-bit.
Disable CBLAS and LAPACK.
10 years ago
Hank Anderson
1d183dcda8
Added lapacke sources.
10 years ago
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.
10 years ago
Hank Anderson
d60b49e5c5
Turned off uninizialized variable warning when compiling lapack-netlib.
10 years ago
Hank Anderson
2828f6630c
Added SMP sources to COMMONOBJS.
10 years ago
Hank Anderson
a0aeda6187
Added function to set defines for the object names (e.g. -DNAME=dgemm).
10 years ago
Hank Anderson
84b3d760c4
Converted rest of Makefile.system to system.cmake.
10 years ago
Hank Anderson
0beea3a5a5
Converted LAPACK flags from Makefile.system.
10 years ago
Hank Anderson
0ccfa60a53
Changed fortran compiler name to be uppercase and stripped of path/ext.
10 years ago
Hank Anderson
30be551502
Corrected fortran compiler name variables.
Fixed some typos.
Updated c_check to set ARCH and BINARY64/32.
Added version variables.
10 years ago
Hank Anderson
e818ace11a
Ported more of Makefile.system to CMake.
10 years ago
Hank Anderson
2d5b442f5b
Ported Fortran configuration code from Makefile.system to fc.cmake.
10 years ago
Hank Anderson
af11aff309
Ported C compiler settings from Makefile.system into new cmake file.
10 years ago
Hank Anderson
e66aa5f3b7
Ported arch dependent settings from Makefile.system to new cmake file.
10 years ago
Hank Anderson
31cf22cb4b
Ported OS settings from Makefile.system into new cmake file.
10 years ago
Hank Anderson
8ede4a8da4
getarch now compiles and sets config.h defines properly.
Still isn't parsed into CMake variables, and getarch_2 needs to
get the same treatment.
10 years ago
Hank Anderson
5eefe18ae4
Added CMakeLists.txt for the first of the BLAS folders.
It only does the double precision compile currently.
I realized I didn't finish converting Makefile.system yet, so I made
a note of that.
10 years ago