1 # Contributions to the OpenBLAS project
3 ## Creator & Maintainer
5 * Zhang Xianyi <traits.zhang@gmail.com>
9 * Wang Qian <traz0824@gmail.com>
10 * Optimize BLAS3 on ICT Loongson 3A.
11 * Optimize BLAS3 on Intel Sandy Bridge.
13 * Werner Saar <wernsaar@googlemail.com>
14 * [2013-03-04] Optimize AVX and FMA4 DGEMM on AMD Bulldozer
15 * [2013-04-27] Optimize AVX and FMA4 TRSM on AMD Bulldozer
16 * [2013-06-09] Optimize AVX and FMA4 SGEMM on AMD Bulldozer
17 * [2013-06-11] Optimize AVX and FMA4 ZGEMM on AMD Bulldozer
18 * [2013-06-12] Optimize AVX and FMA4 CGEMM on AMD Bulldozer
19 * [2013-06-16] Optimize dgemv_n kernel on AMD Bulldozer
20 * [2013-06-20] Optimize ddot, daxpy kernel on AMD Bulldozer
21 * [2013-06-21] Optimize dcopy kernel on AMD Bulldozer
22 * Porting and Optimization on ARM Cortex-A9
23 * Optimization on AMD Piledriver
24 * Optimization on Intel Haswell
26 ## Previous Developers
28 * Zaheer Chothia <zaheer.chothia@gmail.com>
29 * Improve the compatibility about complex number
30 * Build LAPACKE: C interface to LAPACK
31 * Improve the windows build.
33 * Chen Shaohu <huhumartinwar@gmail.com>
34 * Optimize GEMV on the Loongson 3A processor.
37 * Intern. Test Level-2 BLAS.
41 In chronological order:
43 * pipping <http://page.mi.fu-berlin.de/pipping>
44 * [2011-06-11] Make USE_OPENMP=0 disable openmp.
46 * Stefan Karpinski <stefan@karpinski.org>
47 * [2011-12-28] Fix a bug about SystemStubs on Mac OS X.
49 * Alexander Eberspächer <https://github.com/aeberspaecher>
50 * [2012-05-02] Add note on patch for segfaults on Linux kernel 2.6.32.
52 * Mike Nolta <mike@nolta.net>
53 * [2012-05-19] Fix building bug on FreeBSD and NetBSD.
55 * Sylvestre Ledru <https://github.com/sylvestre>
56 * [2012-07-01] Improve the detection of sparc. Fix building bug under
59 * Jameson Nash <https://github.com/vtjnash>
60 * [2012-08-20] Provide support for passing CFLAGS, FFLAGS, PFLAGS, FPFLAGS to
61 make on the command line.
63 * Alexander Nasonov <alnsn@yandex.ru>
64 * [2012-11-10] Fix NetBSD build.
66 * Sébastien Villemot <sebastien@debian.org>
67 * [2012-11-14] Fix compilation with TARGET=GENERIC. Patch applied to Debian package.
68 * [2013-08-28] Avoid failure on qemu guests declaring an Athlon CPU without 3dnow!
70 * Kang-Che Sung <Explorer09@gmail.com>
71 * [2013-05-17] Fix typo in the document. Re-order the architecture list in getarch.c.
73 * Kenneth Hoste <kenneth.hoste@gmail.com>
74 * [2013-05-22] Adjust Makefile about downloading LAPACK source files.
76 * Lei WANG <https://github.com/wlbksy>
77 * [2013-05-22] Fix a bug about wget.
79 * Dan Luu <http://www.linkedin.com/in/danluu>
80 * [2013-06-30] Add Intel Haswell support (using sandybridge optimizations).
82 * grisuthedragon <https://github.com/grisuthedragon>
83 * [2013-07-11] create openblas_get_parallel to retrieve information which parallelization
84 model is used by OpenBLAS.
86 * Elliot Saba <staticfloat@gmail.com>
87 * [2013-07-22] Add in return value for `interface/trtri.c`
89 * Sébastien Fabbro <bicatali@gentoo.org>
90 * [2013-07-24] Modify makefile to respect user's LDFLAGS
91 * [2013-07-24] Add stack markings for GNU as arch-independent for assembler files
93 * Viral B. Shah <viral@mayin.org>
94 * [2013-08-21] Patch LAPACK XLASD4.f as discussed in JuliaLang/julia#2340
96 * Lars Buitinck <https://github.com/larsmans>
97 * [2013-08-28] get rid of the generated cblas_noconst.h file
98 * [2013-08-28] Missing threshold in gemm.c
99 * [2013-08-28] fix default prefix handling in makefiles
101 * yieldthought <https://github.com/yieldthought>
102 * [2013-10-08] Remove -Wl,--retain-symbols-file from dynamic link line to fix tool support
104 * Keno Fischer <https://github.com/loladiro>
105 * [2013-10-23] Use FC instead of CC to link the dynamic library on OS X
107 * Christopher Meng <cickumqt@gmail.com>
108 * [2013-12-09] Add DESTDIR support for easier building on RPM based distros.
109 Use install command instead of cp to install files with permissions control.
111 * Lucas Beyer <lucasb.eyer.be@gmail.com>
112 * [2013-12-10] Added support for NO_SHARED in make install.
114 * carlkl <https://github.com/carlkl>
115 * [2013-12-13] Fixed LAPACKE building bug on Windows
117 * Isaac Dunham <https://github.com/idunham>
118 * [2014-08-03] Fixed link error on Linux/musl
121 * [2014-10-10] trmm and sgemm kernels (optimized for APM's X-Gene 1).
124 * Jerome Robert <jeromerobert@gmx.com>
125 * [2015-01-01] Speed-up small `ger` and `gemv` using stack allocation (bug #478)
126 * [2015-12-23] `stack_check` in `gemv.c` (bug #722)
127 * [2015-12-28] Allow to force the number of parallel make job
128 * [2015-12-28] Fix detection of AMD E2-3200 detection
129 * [2015-12-31] Let `make MAX_STACK_ALLOC=0` do what expected
130 * [2016-01-19] Disable multi-threading in `ger` and `swap` for small matrices (bug #731)
131 * [2016-01-24] Use `GEMM_MULTITHREAD_THRESHOLD` as a number of ops (bug #742)
132 * [2016-01-26] Let `openblas_get_num_threads` return the number of active threads (bug #760)
133 * [2016-01-30] Speed-up small `zger`, `zgemv`, `ztrmv` using stack allocation (bug #727)
136 * [2015-01-07] Added test for drotmg bug #484.
138 * Ton van den Heuvel <https://github.com/ton>
139 * [2015-03-18] Fix race condition during shutdown causing a crash in gotoblas_set_affinity().
141 * Martin Koehler <https://github.com/grisuthedragon/>
142 * [2015-09-07] Improved imatcopy
144 * Ashwin Sekhar T K <https://github.com/ashwinyes/>
145 * [2015-11-09] Assembly kernels for Cortex-A57 (ARMv8)
146 * [2015-11-20] lapack-test fixes for Cortex-A57
147 * [2016-03-14] Additional functional Assembly Kernels for Cortex-A57
148 * [2016-03-14] Optimize Dgemm 4x4 for Cortex-A57
150 * theoractice <https://github.com/theoractice/>
151 * [2016-03-20] Fix compiler error in VisualStudio with CMake
152 * [2016-03-22] Fix access violation on Windows while static linking
154 * Paul Mustière <https://github.com/buffer51/>
155 * [2016-02-04] Fix Android build on ARMV7
156 * [2016-04-26] Android build with LAPACK for ARMV7 & ARMV8
158 * Shivraj Patil <https://github.com/sva-img/>
159 * [2016-05-03] DGEMM optimization for MIPS P5600 and I6400 using MSA
161 * Kaustubh Raste <https://github.com/ksraste/>
162 * [2016-05-09] DTRSM optimization for MIPS P5600 and I6400 using MSA
163 * [2016-05-20] STRSM optimization for MIPS P5600 and I6400 using MSA
165 * Abdelrauf <https://github.com/quickwritereader>
166 * [2017-01-01] dgemm and dtrmm kernels for IBM z13
167 * [2017-02-26] ztrmm kernel for IBM z13
168 * [2017-03-13] strmm and ctrmm kernel for IBM z13
169 * [2017-09-01] initial Blas Level-1,2 (double precision) for IBM z13
170 * [2018-03-07] added missing Blas Level 1-2 (double precision) simd codes
171 * [2019-02-01] added missing Blas Level-1,2 (single precision) simd codes
172 * [2019-03-14] power9 dgemm/dtrmm kernel
173 * [2019-04-29] power9 sgemm/strmm kernel
175 * Jiachen Wang <https://github.com/wjc404>
176 * [2019-07-29] optimize AVX2 DGEMM
177 * [2019-10-20] AVX512 DGEMM kernel (4x8)
178 * [2019-11-06] optimize AVX512 SGEMM
179 * [2019-11-12] AVX512 CGEMM & ZGEMM kernels
180 * [2019-12-23] optimize AVX2 CGEMM and ZGEMM
181 * [2019-12-30] AVX2 CGEMM3M & ZGEMM3M kernels
182 * [2020-01-07] optimize AVX2 SGEMM and STRMM
184 * Rajalakshmi Srinivasaraghavan <https://github.com/RajalakshmiSR>
185 * [2020-04-15] Half-precision GEMM for bfloat16
187 * Marius Hillenbrand <https://github.com/mhillenibm>
188 * [2020-05-12] Revise dynamic architecture detection for IBM z
189 * [2020-05-12] Add new sgemm and strmm kernel for IBM z14
190 * [2020-09-07] Fix builds with clang on IBM z, including dynamic architecture support
192 * Danfeng Zhang <https://github.com/craft-zhang>
193 * [2020-05-20] Improve performance of SGEMM and STRMM on Arm Cortex-A53
195 * PingTouGe Semiconductor Co., Ltd.
196 * [2020-10] Add RISC-V Vector (0.7.1) support. Optimize BLAS kernels for Xuantie C910
198 * River Dillon <oss@outerpassage.net>
199 * [2021-07-10] fix compilation with musl libc
201 * Bine Brank <https://github.com/binebrank>
202 * [2021-10-27] Add vector-length-agnostic DGEMM kernels for Arm SVE
203 * [2021-11-20] Vector-length-agnostic Arm SVE copy routines for DGEMM, DTRMM, DSYMM
204 * [2021-11-12] SVE kernels for SGEMM, STRMM and corresponding SVE copy functions
205 * [2022-01-06] SVE kernels for CGEMM, ZGEMM, CTRMM, ZTRMM and corresponding SVE copy functions
206 * [2022-01-18] SVE kernels and copy functions for TRSM
208 * Ilya Kurdyukov <https://github.com/ilyakurdyukov>
209 * [2021-02-21] Add basic support for the Elbrus E2000 architecture