Updated the doc for 0.2.4 version.
[platform/upstream/openblas.git] / Changelog.txt
1 OpenBLAS ChangeLog
2 ====================================================================
3 Version 0.2.4
4 8-Oct-2012
5 common:
6         * Upgraded LAPACK to 3.4.2 version. (#145)
7         * Provided support for passing CFLAGS, FFLAGS, PFLAGS, 
8           FPFLAGS to make. (#137)
9         * f77blas.h:compatibility for compilers without C99 complex 
10           number support. (#141)
11 x86/x86-64:
12         * Added NO_AVX flag. Check OS supporting AVX on runtime. (#139)
13         * Fixed zdot incompatibility ABI issue with GCC 4.7 on 
14           Windows 32-bit. (#140)
15 MIPS64:
16         * Fixed the generation of shared library bug.
17         * Fixed the detection bug on the Loongson 3A server.
18 ====================================================================
19 Version 0.2.3
20 20-Aug-2012
21 common:
22         * Fixed LAPACK unstable bug about ?laswp. (#130)
23         * Fixed the shared library bug about unloading the library on 
24           Linux (#132).
25         * Fixed the compilation failure on BlueGene/P (TARGET=PPC440FP2)
26           Please use gcc and IBM xlf. (#134)
27 x86/x86-64:
28         * Supported goto_set_num_threads and openblas_set_num_threads 
29           APIs in Windows. They can set the number of threads on runtime.
30           
31 ====================================================================
32 Version 0.2.2
33 6-July-2012
34 common:
35         * Fixed exporting DLL functions bug on Windows/MingW
36         * Support GNU Hurd (Thank Sylvestre Ledru)
37         * Support kfreebsd kernel (Thank Sylvestre Ledru)
38 x86/x86-64:
39         * Support Intel Sandy Bridge 22nm desktop/mobile CPU
40 SPARC:
41         * Improve the detection of SPARC (Thank Sylvestre Ledru)
42
43 ====================================================================
44 Version 0.2.1
45 30-Jun-2012
46 common:
47 x86/x86-64:
48         * Fixed the SEGFAULT bug about hyper-theading
49         * Support AMD Bulldozer by using GotoBLAS2 AMD Barcelona codes
50
51 ====================================================================
52 Version 0.2.0
53 26-Jun-2012
54 common:
55         * Removed the limitation (64) of numbers of CPU cores.
56           Now, it supports 256 cores at max.
57         * Supported clang compiler.
58         * Fixed some build bugs on FreeBSD
59 x86/x86-64:
60         * Optimized Level-3 BLAS on Intel Sandy Bridge x86-64 by AVX instructions.
61           Please use gcc >= 4.6 or clang >=3.1.
62         * Support AMD Bobcat by using GotoBLAS2 AMD Barcelona codes.
63
64 ====================================================================
65 Version 0.1.1
66 29-Apr-2012
67 common:
68         * Upgraded LAPACK to 3.4.1 version. (Thank Zaheer Chothia)
69         * Supported LAPACKE, a C interface to LAPACKE. (Thank Zaheer Chothia)
70         * Fixed the build bug (MD5 and download) on Mac OSX.
71         * Auto download CUnit 2.1.2-2 from SF.net with UTEST_CHECK=1.
72         * Fxied the compatibility issue for compilers without C99 complex number
73           (e.g. Visual Studio)
74 x86/x86_64:
75         * Auto-detect Intel Sandy Bridge Core i7-3xxx & Xeon E7 Westmere-EX.
76         * Test alpha=Nan in dscale.
77         * Fixed a SEGFAULT bug in samax on x86 windows.
78         
79 ====================================================================
80 Version 0.1.0
81 23-Mar-2012
82 common:
83         * Set soname of shared library on Linux.
84         * Added LIBNAMESUFFIX flag in Makefile.rule. The user can use 
85           this flag to control the library name, e.g. libopenblas.a, 
86           libopenblas_ifort.a or libopenblas_omp.a.
87         * Added GEMM_MULTITHREAD_THRESHOLD flag in Makefile.rule.
88           The lib use single thread in GEMM function with small matrices.
89 x86/x86_64:
90         * Used GEMV SSE/SSE2 kernels on x86 32-bit.
91         * Exported CBLAS functions in Windows DLL.
92 MIPS64:
93         * Completed Level-3 BLAS optimization on Loongson 3A CPU.
94         * Improved GEMV performance on Loongson 3A CPU.
95         * Improved Level-3 BLAS performance on Loongson 3B CPU. (EXPERIMENT)
96
97 ====================================================================
98 Version 0.1 alpha2.5
99 19-Feb-2012
100 common:
101         * Fixed missing "#include <sched.h>" bug on Mac OS X.
102           Thank Mike Nolta for the patch.
103         * Upgraded LAPACK to 3.4.0 version
104         * Fixed a bug on Mac OS X. Don't require SystemStubs on OS X.
105           SystemStubs does not exist on Lion. Thank Stefan Karpinski.
106         * Improved README with using OpenMP. Check the internal threads
107           count less than or equal to omp_get_max_threads()
108 x86/x86_64:
109         * Auto-detect Intel Core i6/i7 (Sandy Bridge) CPU with Nehalem assembly kernels
110         * Fixed some bugs on MingW 64-bit including zgemv, cdot, zdot.
111
112 ====================================================================
113 Version 0.1 alpha2.4
114 18-Sep-2011
115 common:
116         * Fixed a bug about installation. The header file "fblas77.h" 
117           works fine now.
118         * Fixed #61 a building bug about setting TARGET and DYNAMIC_ARCH.
119         * Try to handle absolute path of shared library in OSX. (#57)
120           Thank Dr Kane O'Donnell.
121         * Changed the installation folder layout to $(PREFIX)/include and
122           $(PREFIX)/lib
123
124 x86/x86_64:
125         * Fixed #58 zdot/xdot SEGFAULT bug with GCC-4.6 on x86. According 
126           to i386 calling convention, The callee should remove the first 
127           hidden parameter.Thank Mr. John for this patch. 
128
129 ====================================================================
130 Version 0.1 alpha2.3
131 5-Sep-2011
132
133 x86/x86_64:
134         *  Added DTB_ENTRIES into dynamic arch setting parameters. Now, 
135            it can read DTB_ENTRIES on runtime. (Refs issue #55 on github)
136
137 ====================================================================
138 Version 0.1 alpha2.2
139 14-Jul-2011
140
141 common:
142         * Fixed a building bug when DYNAMIC_ARCH=1 & INTERFACE64=1. 
143           (Refs issue #44 on github)
144
145 ====================================================================
146 Version 0.1 alpha2.1
147 28-Jun-2011
148
149 common:
150         * Stop the build and output the error message when detecting 
151           fortran compiler failed. (Refs issue #42 on github)
152
153 ====================================================================
154 Version 0.1 alpha2
155 23-Jun-2011
156
157 common:
158         * Fixed blasint undefined bug in <cblas.h> file. Other software 
159           could include this header successfully(Refs issue #13 on github)
160         * Fixed the SEGFAULT bug on 64 cores. On SMP server, the number 
161           of CPUs or cores should be less than or equal to 64.(Refs issue #14 
162           on github)
163         * Support "void goto_set_num_threads(int num_threads)" and "void
164           openblas_set_num_threads(int num_threads)" when USE_OPENMP=1
165         * Added extern "C" to support C++. Thank Tasio for the patch(Refs 
166           issue #21 on github)
167         * Provided an error message when the arch is not supported.(Refs 
168           issue #19 on github)
169         * Fixed issue #23. Fixed a bug of f_check script about generating link flags.
170         * Added openblas_set_num_threads for Fortran.
171         * Fixed #25 a wrong result of rotmg.
172         * Fixed a bug about detecting underscore prefix in c_check.
173         * Print the wall time (cycles) with enabling FUNCTION_PROFILE
174         * Fixed #35 a build bug with NO_LAPACK=1 & DYNAMIC_ARCH=1
175         * Added install target. You can use "make install". (Refs #20)
176
177
178 x86/x86_64:
179         * Fixed #28 a wrong result of dsdot on x86_64.
180         * Fixed #32 a SEGFAULT bug of zdotc with gcc-4.6.
181         * Fixed #33 ztrmm bug on Nehalem.
182         * Walk round #27 the low performance axpy issue with small imput size & multithreads.
183
184 MIPS64:
185         * Fixed #28 a wrong result of dsdot on Loongson3A/MIPS64. 
186         * Optimized single/double precision BLAS Level3 on Loongson3A/MIPS64. (Refs #2)
187         * Optimized single/double precision axpy function on Loongson3A/MIPS64. (Refs #3)
188
189 ====================================================================
190 Version 0.1 alpha1
191 20-Mar-2011
192
193 common:
194         * Support "make  NO_LAPACK=1" to build the library without 
195           LAPACK functions.
196         * Fixed randomly SEGFAULT when nodemask==NULL with above Linux 2.6.34. 
197           Thank Mr.Ei-ji Nakama providing this patch. (Refs issue #12 on github)
198         * Added DEBUG=1 rule in Makefile.rule to build debug version.
199         * Disable compiling quad precision in reference BLAS library(netlib BLAS).
200         * Added unit testcases in utest/ subdir. Used  CUnit framework.
201         * Supported OPENBLAS_* & GOTO_* environment variables (Pleas see README)
202         * Imported GotoBLAS2 1.13 BSD version
203
204 x86/x86_64:
205         * On x86 32bits, fixed a bug in zdot_sse2.S line 191. This would casue 
206           zdotu & zdotc failures.Instead,Walk around it. (Refs issue #8 #9 on github)
207         * Modified ?axpy functions to return same netlib BLAS results 
208           when incx==0 or incy==0 (Refs issue #7 on github)
209         * Modified ?swap functions to return same netlib BLAS results 
210           when incx==0 or incy==0 (Refs issue #6 on github)
211         * Modified ?rot functions to return same netlib BLAS results 
212           when incx==0 or incy==0 (Refs issue #4 on github)
213         * Detect Intel Westmere,Intel Clarkdale and Intel Arrandale 
214           to use Nehalem codes.
215         * Fixed a typo bug about compiling dynamic ARCH library.
216 MIPS64:
217         * Improve daxpy performance on ICT Loongson 3A.
218         * Supported ICT Loongson 3A CPU (Refs issue #1 on github)
219 ====================================================================