Commit Graph

159 Commits

Author SHA1 Message Date
Martin Kroeker 833a8880c6
add cblas_?gemm_batch 2024-05-29 15:47:50 +02:00
frjohnst 87026ac1b1 Revert "fix conlict between PR 4515 and AIX shared obj support"
This reverts commit bdaa6705ca.

It turns out that PRs 4515 and 4520 break the tests under
lapack-netlib/TESTING which require SECOND and DSECND. IBM
has decided this is a bigger biger problem than the conflict
between lapack second_ and the xlf run time.
2024-05-15 09:45:17 -04:00
Martin Kroeker 35d84ad012
Merge pull request #4658 from mattip/remove-extra-suffix
do not add LIBNAMESUFFIX to dylib
2024-04-23 11:03:33 +02:00
Matti Picus 94feadf242 do not add LIBNAMESUFFIX to dylib 2024-04-21 13:16:40 +10:00
Matti Picus 4d96e0ce18 remove extraneous suffix from shared object SONAME 2024-04-11 10:36:30 +10:00
Chip Kerchner 0e0d0bce1a Fix global (static) constructor priorty so that OpenBLAS gets initialized before other libraries. Other unit test AIX fix. 2024-03-25 15:11:55 -05:00
frjohnst bdaa6705ca fix conlict between PR 4515 and AIX shared obj support 2024-02-23 10:20:48 -05:00
Martin Kroeker 2e86faa657
Merge branch 'develop' into issue4468 2024-02-23 11:39:49 +01:00
Ayappan Perumal 892f8ff3e5 Shared library support for AIX 2024-02-22 07:05:37 -06:00
Martin Kroeker 179527f622
Merge branch 'OpenMathLib:develop' into issue4468 2024-02-15 12:15:39 +01:00
Martin Kroeker 10ea3fb742
fix duplication of name parts 2024-02-09 17:09:55 +01:00
Martin Kroeker 93872f4681
drop the ?laqz? symbols for now (not translatable by f2c) 2024-02-08 23:02:09 +01:00
Martin Kroeker 83bec51355
Update with recently added CBLAS interfaces and LAPACK/LAPACKE functions 2024-02-08 21:23:48 +01:00
Martin Kroeker 25b300bbee
improve internal names 2024-02-06 23:40:01 +01:00
Martin Kroeker 440edfd997
Add option to suppress versioning of the internal name 2024-02-05 21:44:50 +01:00
Martin Kroeker 2390e0bfbc
Quote the BU (underscore) option as it may not be set 2023-09-21 23:04:25 +02:00
Martin Kroeker 174f4e65e3
Add LAPACK/LAPACKE functions for Dynamic Mode Decomposition 2023-06-20 23:14:35 +02:00
Martin Kroeker 2ea00788c2
Add ?GEMMT 2023-04-11 22:46:51 +02:00
Martin Kroeker 6c45c98083
Add (only) the GEMMT functions 2023-04-11 22:41:18 +02:00
Martin Kroeker d5fbec7c20
Export ?MIN/?MAX, ?AMIN/?AMAX, CDOT/ZDOT and ?GEMMT 2023-04-10 23:49:35 +02:00
Ralf Gommers a4ee1c84f0 Export `ssyconvf` symbol
This was apparently missed in commit a836fe8ec when adding the
LAPACK 3.7.0 symbols. We noticed when adding wrappers for 3.7.0
routines in SciPy. For more details, see
https://github.com/rgommers/scipy/issues/143
2023-04-07 12:50:36 +01:00
Martin Kroeker f703846ad9
Add function prototypes 2022-08-13 11:38:27 +02:00
Martin Kroeker 72ea19d187
Amend some LAPACK 3.10.0 additions 2022-06-09 19:31:08 +02:00
Martin Kroeker e9c3535208
Fix LAPACK path in new gensymbol script 2022-06-05 23:28:12 +02:00
Martin Kroeker f5a379bf77
Add USE_PERL fallback option for gensymbol script 2022-05-22 18:35:23 +02:00
Martin Kroeker cfc1a9ed8d
Add back original PERL-based script under new name 2022-05-22 18:33:24 +02:00
Owen Rafferty 42c7a27e6b
rewrite perl scripts in universal shell 2022-05-18 19:00:15 -05:00
Martin Kroeker db7a03dd4c
keep flang-classic on MacOS from trying to create an executable instead of a library 2022-02-10 23:04:45 +01:00
Martin Kroeker 0b8a436af9
Add mixed clang/ifort build on OSX to Azure CI (#3185)
* Add mixed clang/ifort build on OSX to the Azure CI config based on https://github.com/oneapi-src/oneapi-ci
(and remove debugging tools from the clang+gfortran job)

* Remove extraneous libgfortran dependency of ifort builds

* remove FEXTRALIB from link line of shared library as ifort keeps track of dependencies (and they are different for a .dylib than what f_check got for an executable)
2021-04-22 02:11:20 +02:00
Harmen Stoppels ec6b354c32 use /usr/bin/env perl 2021-02-24 14:07:20 +01:00
Chen, Guobing a7b1f9b1bb Implementation of BF16 based gemv
1. Add a new API -- sbgemv to support bfloat16 based gemv
2. Implement a generic kernel for sbgemv
3. Implement an avx512-bf16 based kernel for sbgemv

Signed-off-by: Chen, Guobing <guobing.chen@intel.com>
2020-10-29 02:08:23 +08:00
Martin Kroeker 0d140e61ac
Fix wrong grouping of dcombssq 2020-10-23 15:53:40 +02:00
Martin Kroeker 4c45cd6294
fix missing split of sladiv1/dladiv/ilaenv2stage by build type 2020-10-23 15:31:25 +02:00
Martin Kroeker 4ad33c46b0
Add back symbols that got dropped when splitting by type 2020-10-19 20:37:52 +02:00
Martin Kroeker 5b9ebe4f8a
Merge pull request #2919 from isuruf/export
Fix exporting some lapack and cblas symbols
2020-10-19 08:14:27 +02:00
Isuru Fernando 14b1d33933 Fix exporting some lapack and cblas 2020-10-18 22:45:58 -05:00
Isuru Fernando a5c667b55c
Need a space when redirecting to file
Following two commands have two completely different meanings
perl ./gensymbol objcopy x86_64 _ 0 0  0 0 0 0 "" "64_" 1 0 1 1 1 1 > objcopy.def
perl ./gensymbol objcopy x86_64 _ 0 0  0 0 0 0 "" "64_" 1 0 1 1 1 1> objcopy.def
2020-10-18 09:40:31 -05:00
Rajalakshmi Srinivasaraghavan b5d30b390d Fix build issues with bfloat16
This patch fixes compilation errors due to recent renaming from SH to SB
with BUILD_BFLOAT16.
2020-10-13 11:00:22 -05:00
Martin Kroeker ae1ab5bfdf
Change "HALF" and "sh" to "BFLOAT16" and "sb" 2020-10-12 00:03:21 +02:00
Martin Kroeker d33de97d60
Adapt to having only a subset of variable types supported 2020-10-11 14:36:45 +02:00
Martin Kroeker 6a83c591d6
Adapt for having only a subset of variable types 2020-10-11 14:34:12 +02:00
Chen, Guobing deaeb6c5b8 Add bfloat16 based dot and conversion with single/double
1. Added bfloat16 based dot as new API: shdot
2. Implemented generic kernel and cooperlake-specific (AVX512-BF16) kernel for shdot
3. Added 4 conversion APIs for bfloat16 data type <=> single/double: shstobf16 shdtobf16 sbf16tos dbf16tod
     shstobf16 -- convert single float array to bfloat16 array
     shdtobf16 -- convert double float array to bfloat16 array
     sbf16tos  -- convert bfloat16 array to single float array
     dbf16tod  -- convert bfloat16 array to double float array
4. Implemented generic kernels for all 4 conversion APIs, and cooperlake-specific kernel for shstobf16 and shdtobf16
5. Update level1 thread facilitate functions and macros to support multi-threading for these new APIs
6. Fix Cooperlake platform detection/specify issue when under dynamic-arch building
7. Change the typedef of bfloat16 from unsigned short to more strict uint16_t

Signed-off-by: Chen, Guobing <guobing.chen@intel.com>
2020-09-04 02:31:25 +08:00
Wileam Phan 9ae154ba89 Patch for building on Summit 2020-07-20 23:30:28 -04:00
Simon Märtens 41fc6f3cd2 Added missing exported symbols. 2020-06-13 22:37:39 +02:00
Martin Kroeker ba2c5b404d
When building with flang, use it also for the final link step to get dependencies right 2020-06-09 16:09:34 +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
Rajalakshmi Srinivasaraghavan 67cc4b9e16 Fix warnings in clang and export symbol 2020-04-15 19:15:23 -05:00
Baptiste Daroussin 41e802443a libname: treat FreeBSD and DragonFly like linux and sunos
There is no difference in the way libnames are handle between FreeBSD
and linux or sunos. FreeBSD and DragonFly prefers having sonames as well
2020-04-03 06:20:42 +02:00
Martin Kroeker 23f322f997
Do not run any cleanup if the program is exiting anyway
From keno's PR #2350 - this avoids the potential hang in blas_thread_shutdown where we may wait for threads to exit while they are waiting on the loader lock from DllMain
2020-01-19 13:28:27 +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