Martin Kroeker
5f8f0583d4
Merge branch 'develop' into fc-1847
2018-11-07 08:47:52 +01:00
Martin Kroeker
974a6a30f2
Merge pull request #1858 from brada4/buff-1847
...
Add minimum threshold for number of buffers
2018-11-07 08:46:55 +01:00
Andrew
9531d0e175
lets fit it in one 4k page
2018-11-06 17:51:24 +00:00
Andrew
40cce0e353
handle cmake too
2018-11-06 09:45:49 +00:00
Andrew
3fd41313fc
add low bound for number of buffers
2018-11-06 09:40:13 +00:00
Andrew
a931afe269
init
2018-11-06 09:39:05 +00:00
Andrew
7d3502b500
Add -frecursive gfortran option by default
2018-11-06 08:20:55 +00:00
Andrew
066f8065d1
init
2018-11-06 08:19:08 +00:00
Renato Golin
fb5b2177ca
[Arm64) Revert A53 detection as A57
...
This patch reverts the decision of treating A53 like A57, which was
based on an analysis done on server class hardware and is not
representative of all A53s out there.
Fixes #1855 .
2018-11-05 11:34:49 +00:00
Martin Kroeker
f1c02273cb
Merge pull request #1846 from fenrus75/threadsize
...
gemm/dgemm: add a way for an arch kernel to specify preferred sizes
2018-11-02 13:18:01 +01:00
Martin Kroeker
661035477c
Merge pull request #1850 from martin-frbg/issue1811
...
Restore Android/ARMv7 build fix from #778
2018-11-02 09:50:51 +01:00
Martin Kroeker
aa7e47aa0a
Merge pull request #1849 from martin-frbg/aix_install2
...
Use installbsd on AIX
2018-11-01 20:39:16 +01:00
Martin Kroeker
9c177d270b
Restore Android/ARMv7 build fix from #778
...
for #1811
2018-11-01 18:50:25 +01:00
Martin Kroeker
b025523197
Use installbsd on AIX
...
(and fix misplaced parenthesis from previous commit). See #1803
2018-11-01 18:26:08 +01:00
Martin Kroeker
5b50bd36f7
Merge pull request #1845 from martin-frbg/aix_install
...
Accomodate AIX install, which has different syntax
2018-11-01 09:53:10 +01:00
Arjan van de Ven
5b708e5eb1
sgemm/dgemm: add a way for an arch kernel to specify prefered sizes
...
The current gemm threading code can make very unfortunate choices, for
example on my 10 core system a 1024x1024x1024 matrix multiply ends up
chunking into blocks of 102... which is not a vector friendly size
and performance ends up horrible.
this patch adds a helper define where an architecture can specify
a preference for size multiples.
This is different from existing defines that are minimum sizes and such.
The performance increase with this patch for the 1024x1024x1024 sgemm
is 2.3x (!!)
2018-11-01 01:43:20 +00:00
Arjan van de Ven
dcc5d6291e
skylakex: Make the sgemm/dgemm beta code robust for a N=0 or M=0 case
...
in the threading code there are cases where N or M can become 0,
and the optimized beta code did not handle this well, leading
to a crash
during the audit for the crash a few edge conditions on the if statements
were found and fixed as well
2018-11-01 01:42:09 +00:00
Martin Kroeker
7b5aea52bb
Accomodate AIX install, which has different syntax
...
for #1803
2018-10-31 21:50:34 +01:00
Martin Kroeker
f5595d0262
Merge pull request #1843 from martin-frbg/aix_numprocs
...
Add get_num_procs implementation for AIX
2018-10-31 21:25:15 +01:00
Martin Kroeker
326d394a0f
Add get_num_procs implementation for AIX
...
(and copy HAIKU implementation to the non-TLS version of the code as well)
2018-10-31 18:38:22 +01:00
Martin Kroeker
6af8e35a24
Merge pull request #1837 from embray/set-num-thread-after-fork
...
Ensure that blas_thread_init has been called in openblas_set_num_threads
2018-10-30 12:41:24 +01:00
Erik M. Bray
38cf5d9364
ensure that threading has been initialized in the first place before calling openblas_set_num_threads
2018-10-28 21:16:52 +00:00
Martin Kroeker
8a43baacb2
Merge pull request #1836 from martin-frbg/zen2core
...
Fix detection of Ryzen2 (missing CORE_ZEN)
2018-10-28 20:00:01 +01:00
Martin Kroeker
64ca44873b
Fix detection of Ryzen2 (missing CORE_ZEN)
2018-10-28 18:36:55 +01:00
fengrl
2d8064174c
register push/pop command change
...
64bit push/pop register command should be used. Otherwise, data will lost.
2018-10-26 17:55:15 +08:00
Martin Kroeker
76a66eaac8
Merge pull request #1829 from ashwinyes/develop_aarch64_dynamic_arch_support
...
Add DYNAMIC_ARCH support for ARM64
2018-10-23 18:14:28 +02:00
Andrew
2992e3886a
disable threading in C/ZSWAP copying from S/DSWAP
2018-10-22 23:21:49 +03:00
Ashwin Sekhar T K
d5aeff636f
ARM64: Enable DYNAMIC_ARCH
...
Enable DYNAMIC_ARCH feature on ARM64. This patch uses the cpuid
feature in linux kernel to detect the core type at runtime
(https://www.kernel.org/doc/Documentation/arm64/cpu-feature-registers.txt ).
If this feature is missing in kernel, then the user should use the
OPENBLAS_CORETYPE env variable to select the desired core type.
2018-10-22 01:49:35 -07:00
Ashwin Sekhar T K
af2837c392
ARM64: Remove #define ARMV8 for THUNDERX
2018-10-22 01:49:35 -07:00
Ashwin Sekhar T K
e7b66cd36e
ARM64: Fix DYNAMIC_ARCH compilation for cores which dont use GEMM3M
2018-10-22 01:45:51 -07:00
Ashwin Sekhar T K
d50abc8903
ARM64: Move parameters from parameter.c to param.h
...
Remove the runtime setting of P, Q, R parameters for
targets ARMV8, THUNDERX2T99. Instead set them as constants
in param.h at compile time.
2018-10-22 01:45:51 -07:00
Ashwin Sekhar T K
351a0c777c
ARM64: Remove XGENE1 references
...
Remove XGENE1 target as the implementation for the
same is incomplete. Moreover whoever wishes to use
on XGENE1 can use the generic ARMV8 target as there
are no XGENE1 specific optimizations in OpenBLAS.
2018-10-22 01:45:51 -07:00
Martin Kroeker
e3c262e5cf
Merge pull request #1825 from brada4/hemv
...
Delay _hemv threading in attempt to address #1820
2018-10-21 20:34:05 +02:00
Andrew
a293bdcd5e
re-arrange new code for readability
2018-10-20 21:37:53 +03:00
Andrew
c7bbf9c987
Attempt to tame _hemv threading #1820
2018-10-20 11:13:29 +03:00
Andrew
898a8dcaba
init
2018-10-20 10:55:04 +03:00
Martin Kroeker
71c6deed60
Merge pull request #1821 from ashwinyes/develop_aarch64_armv8neonkernels
...
Use ThunderX2 Neon Kernels for ARMV8 Target
2018-10-18 08:13:05 +02:00
Ashwin Sekhar T K
21f46a1cf2
ARM64: Use THUNDERX2T99 Neon Kernels for ARMV8
...
Currently the generic ARMV8 target uses C implementations
for many routines. Replace these with the neon implementations
written for THUNDERX2T99 target which are upto 6x faster for
certain routines.
2018-10-17 10:44:37 -07:00
Ashwin Sekhar T K
caf339412f
ARM64: Remove dependency of THUNDERX2T99 Makefile on CORTEXA57 Makefile
2018-10-17 08:02:40 -07:00
Ashwin Sekhar T K
8001fdcd2a
ARM64: Remove dependency of THUNDERX Makefile on ARMV8 Makefile
2018-10-17 08:02:16 -07:00
Ashwin Sekhar T K
162e312832
ARM64: Remove dependency of CORTEXA57 Makefile on ARMV8 Makefile
2018-10-17 08:01:45 -07:00
Ashwin Sekhar T K
c3d93caa8d
ARM64: Remove dependency of XGENE1 Makefile on ARMV8 Makefile
2018-10-17 08:01:27 -07:00
Martin Kroeker
a71923514f
Merge pull request #1815 from fenrus75/sgemm_beta_fix
...
enable the SGEMM/SKX C based kernel
2018-10-14 19:57:34 +02:00
Arjan van de Ven
55b244ca0d
enable the SGEMM/SKX C based kernel
...
In QA the final bug was found so now the sklyakex sgemm C based kernel can
be activated....
2018-10-12 09:30:35 +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
c5f88f5a57
Merge pull request #1807 from xianyi/revert-1798-cmake-avx512
...
Revert "Add -march=skylake-avx512 when required"
2018-10-11 07:47:53 +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