~ubuntu-branches/ubuntu/vivid/atlas/vivid

« back to all changes in this revision

Viewing changes to doc/ChangeLog

  • Committer: Bazaar Package Importer
  • Author(s): Sylvestre Ledru
  • Date: 2009-09-17 23:31:54 UTC
  • mto: (2.2.1 experimental)
  • mto: This revision was merged to the branch mainline in revision 10.
  • Revision ID: james.westby@ubuntu.com-20090917233154-9esw88ub02twbuab
Tags: upstream-3.8.3
ImportĀ upstreamĀ versionĀ 3.8.3

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
ATLAS 3.6.0, changes from 3.4.2:
 
1
ATLAS 3.8.3 released 02/18/09, changes from 3.8.2:
 
2
   * New architectures, arch-specific kernels, and configure support:
 
3
     - Changed Core2Duo arch to simply Core2
 
4
       + New kernels backported from 3.9.x for Core2 substantially increase
 
5
         Core2 performance
 
6
       + New arch defs for all Core2 archs
 
7
     - Added recognition of Corei7 architecture
 
8
       + Added arch defs which presently use new Core2-tuned kernels
 
9
     - Added new K10h kernel
 
10
       - Updated 64-bit arch defs to use it
 
11
   * Fixed bugs:
 
12
     - Fixed archinfo_x86 to always use extended family type (new usage)
 
13
     - Fixed mass typo for archinfo_freebsd
 
14
     - Fixed flag quotes for Make.mvtune
 
15
     - Fixed error causing GEMM to get wrong answer if K=3 on MIPS arch
 
16
     - Added additional workarounds for gcc's solaris_x86 division bug
 
17
     - Fixed bug in TRSM tuning
 
18
ATLAS 3.8.2 released 06/06/08, Changes from 3.8.1:
 
19
   * Fixed bugs:
 
20
     - Pervasive performance bug in GEMM, affecting all architectures
 
21
     - Occasional access of C when BETA=0
 
22
   * Configure improvements:
 
23
     - Improved freebsd architecture probe
 
24
     - Improved linux cpu throttling probe
 
25
     - Added Itanium 2 detection as "McKinley" in archinfo_linux
 
26
   * Added cleanup for 4x1 case for 64-bit sgemm (almost doubles LAPACK 'Upper' 
 
27
     Cholesky performance -- ATLAS Cholesky is fast without this fix)
 
28
   * Added mu=4 SSE M cleanup for extra performance
 
29
ATLAS 3.8.1 released 02/22/08, Changes from 3.8.0:
 
30
   * Fixed bug in slvtst that counted complex flops same as real
 
31
   * Fixed bug causing wrong answer for row-major gemm C=A*A' or A'A 
 
32
   * Fixed bug in configure causing Pentium-M to be IDed as CoreDuo
 
33
   * Fixed bug in tfc.c causing memory overwrite when too many samples taken
 
34
   * Improved L1 BLAS timers so they work like the rest of the package, and
 
35
     thus don't die all the time on tolerance failures
 
36
   * Improved ATLAS/tune/blas/gemm/mmsearch.c:
 
37
     - for x86, tried more registers, since smart compiler can reduce A & B
 
38
       regs to 2 (and possibly even 1)
 
39
     - Made it so search tries both load-C-at-top and load-C-at-bottom of
 
40
       M loop.  Bottom is superior for error, and ATLAS originally defaulted
 
41
       to load-C-at-top.
 
42
   * Added configure support for new K10h platform from AMD, as well as
 
43
     basic architectural defaults (no new kernels, just good search)
 
44
 
 
45
ATLAS 3.8.0 released 10/10/07, changes from 3.6.0:
 
46
   * Improved installation support: now works with 5-step standard install:
 
47
     - configure, build, check, time, install
 
48
     - Support for easily building 32 or 64 bit libraries
 
49
     - Support for building dynamic (shared) libraries
 
50
     - Can build in any directory
 
51
   * Added detailed installation guide (ATLAS/doc/atlas_install.pdf), 
 
52
     indicating how to build ATLAS, as well as describing how you can
 
53
     ensure that the produced libraries get adequate performance as well
 
54
     as the correct answers.
 
55
   * Improved GEMM performance on most platforms:
 
56
     - HAMMER (Opteron/Athlon-64), P4, P4E, Core2Duo, CoreDuo, MIPS,
 
57
       G5/PowerPC970, POWER4, POWER5, etc.
 
58
     - Better handling of long-thin matrices (K >> M,N) and rank-K, K<=4 shapes
 
59
     - Improved complex performance on some platforms
 
60
     - Further reduced error on some platforms 
 
61
       + ATLAS error bound always <= reference BLAS before reduction
 
62
   * More OS support:
 
63
     - OSX/x86, Solaris/x86, Linux/MIPS, modern Windows,
 
64
   * A lot of other changes, see developer ChangeLog below for further details
 
65
ATLAS 3.8.0 released 10/10/07, changes from 3.7.40:
 
66
   * Updated some documentation
 
67
ATLAS 3.7.40 released 10/10/07, changes from 3.7.39:
 
68
   * Fixed configure, where lack of \n after GOODGCC caused errors on Itanium
 
69
   * Increased MAXALLOC in tfc.c to allow larger malloc in CacheEdge detection
 
70
   * Replaced nonportable == with -eq (int) or = (str) in test lines of 
 
71
     configure
 
72
   * Rewrote config's handling of 32/64 compiler flags to be more robust 
 
73
     to get around error found when trying to install 32bit SunOS libs
 
74
   * Added USIII architectural defaults and config support
 
75
   * Updated atlas_devel and atlas_contrib
 
76
ATLAS 3.7.39 released 10/07/07, changes from 3.7.38:
 
77
   * Updated configure to handle AIX 64-bit flags automatically
 
78
   * Expanded and corrected PowerPC ABI section in atlas_contrib
 
79
   * Fixed PowerPC assembly kernels to work under AIX for 64 & 32 bit ABIs
 
80
ATLAS 3.7.38 released 10/05/07, changes from 3.7.37:
 
81
   * Added new install guide, ATLAS/doc/atlas_install.pdf
 
82
   * Updated docs
 
83
   * Added F77 testing wrappers for POSV and GESV, so slvtst can test F77 iface
 
84
   * Expanded configure support for AIX, but build still dies
 
85
   * Configure support and flags for G4
 
86
   * Added arch defaults for:
 
87
     - Pentium III
 
88
     - G4 using apple's hacked gcc 3.1
 
89
     - HAMMER32SSE3
 
90
     - HAMMER32SSE2
 
91
ATLAS 3.7.37 released 08/10/07, changes from 3.7.36:
 
92
   * Fixed error in gemm, so we call SYRK for A*A^T only when beta=0
 
93
ATLAS 3.7.36 released 08/09/07, changes from 3.7.35:
 
94
   * Some smoothing ops allowing easier use of windows compilers
 
95
   * Fixed error in mmsearch causing PPC searches to die wt latency problems
 
96
   * Fixed error where wrong flags caused snrm2 to be incorrect on Core2Duo
 
97
   * Changed GER to heavily favor applying alpha to X, in order to keep LAPACK
 
98
     from barfing up a lung on those tiny matrix test cases
 
99
   * Fixed error in complex syreflect causing wrong answers in [c,z]gemm when
 
100
     gemm is used to do a syrk
 
101
ATLAS 3.7.35 released 07/26/07, changes from 3.7.34:
 
102
   * Changed it so pthread calls assert zero return value (debugging aid)
 
103
   * Improved threaded GEMM performance for cases where two dim < NB
 
104
   * Increased default MaxMalloc to 64MB
 
105
   * Improved Windows support:
 
106
     - Added support for building Windows ATLAS with Intel's ifort
 
107
     - Added support for building on Windows without the cygwin library
 
108
     - Added ability to get cycle accurate timer when using Windows compiler
 
109
   * Improved POWER4 & P4SSE2 arch defaults.
 
110
   * Removed duplicate symbols in Make.mmsrc messing up shared library building
 
111
ATLAS 3.7.34 released 06/25/07, changes from 3.7.33:
 
112
   * Fixed error causing read of C for beta=0 in ATL_mmJITcp
 
113
   * [S,D]KC compiles the bulk of the non-kernel library
 
114
   * Added 64 bit single precision Core2Duo kernel, added to arch defs
 
115
   * Added gcc4.2/P432SSE2 arch defs
 
116
   * Changed all Makefiles so ICC compiles only interface routines, and 
 
117
   * Added support for POWER4/Linux, including 64 & 32 bit arch defs using gcc
 
118
     - No xlc support or single precision assembly yet
 
119
   * Install using gnu compilers now works under Windows
 
120
   * Now works correctly for Linux/POWER5/gcc
 
121
ATLAS 3.7.33 released 05/01/07, changes from 3.7.32:
 
122
   * Made it so ATLAS builds on Solaris x86:
 
123
     - Had to remove all constant divides in integer expressions in assembly,
 
124
       as Sun geniuses decided to change comment character to '/'
 
125
       + \/ is supposed to work, but doesn't
 
126
     - Had to touch every x86 assembly file to change assembly comments to /**/
 
127
ATLAS 3.7.32 released 04/27/07, changes from 3.7.31:
 
128
   * Adapted MIPS double prec kernel to single
 
129
   * Added 32-bit support (n32) to MIPS (assembly & config)
 
130
   * Ported UltraSPARC assembly kernels used by arch defs to v9 ABI
 
131
   * Added arch defs to build 64 bit (v9) ABI for Solarix/UltraSPARC
 
132
   * Documented these new interfaces in atlas_contrib.
 
133
ATLAS 3.7.31 released 04/17/07, changes from 3.7.30:
 
134
   * Fixed bug in atlas_prefetch found by David Cournapeau.
 
135
   * Added MIPSICE9 prefetch option, d/zgemm assembly kernels and arch defaults.
 
136
     - These should work on most MIPS platforms 
 
137
     - Assembly kernels work under IRIX, but no way to get cc to do prefetch
 
138
       + could not make cc's pragma work with ATLAS's atlas_prefetch defs
 
139
   * Added support for OSX/PowerPC970:
 
140
     - Double precision assembly kernel getting 82.5% of peak (4*Mhz)
 
141
     - Single precision assembly kernel getting 79% of peak (8*Mhz)
 
142
     - Arch defaults for 64 & 32 bit installs
 
143
     - Config support for random-ass apple flag extravaganza
 
144
ATLAS 3.7.30 released 03/25/07, changes from 3.7.29:
 
145
   * Bug fixes
 
146
     - fixed error in building --nof77 dynamic libs
 
147
     - fixed dynamic lib link for f77 interface libs
 
148
     - Updated L1 kernel testers in tune/ for function routs to call the test
 
149
       func first (so correct answer not on stack), and to check for NaN
 
150
     - Fixed it so error report genned again.
 
151
     - Fixed error causing real JITcp to copy all the time, and then fixed
 
152
       error in func ptr when this was selected.
 
153
   * Wrote special Just In Time Copy (JITcp) gemm for complex that copies A&B
 
154
     a block at a time, and calls the real kernel for complex matmul
 
155
     - Speeds up large-case z/cgemm on some platforms (5-10%)
 
156
     - Speeds up long-K case for some platforms (as much as doubles perf)
 
157
   * Fixed miscalculation of CacheEdge, where I stopped using it for large K.
 
158
     This fix reduces memory usage, and speeds up asymptotic case a bit.
 
159
ATLAS 3.7.29 released 02/28/07, changes from 3.7.28:
 
160
   * Wrote special routines (mmBPP and mmMNK) for handling small M, N and 
 
161
     large K case.  For M = N <= NB can double performance.  Presently works
 
162
     for real precisions (s,d) only.
 
163
   * Translated x87 Athlon-64 kernel to 32-bit assembly.
 
164
   * Put in special code to handle SYRK call to GEMM by calling SYRK and
 
165
     reflecting the triangular matrix.  Doubles speed, and avoid fp error
 
166
     on reflection.
 
167
   * Added arch defaults for Core2Duo32SSE3
 
168
   * Fixed some problems with -b 32 in configure and building dynamic libs
 
169
   * Fixed ATLAS/bin Makefile to correctly link x?l1blastst_dyn
 
170
   * Enlarged MaxMalloc
 
171
ATLAS 3.7.28 released 02/11/07, changes from 3.7.27:
 
172
   * bugfix release on 3.7.27 on configure/compiler behavior:
 
173
     - Fixed possible infinite loop in probing for f77libs
 
174
     - Made gnu arch defaults work for gnu compilers regardless of compiler name
 
175
ATLAS 3.7.27 released 02/10/07, changes from 3.7.26:
 
176
   * Support for building ATLAS to .so!  See INSTALL.txt for details.
 
177
   * Expanded support for appending compiler flags:
 
178
     - Can specify flags to be appended to gcc in user-contributed index files
 
179
     - Can append flags to only C compilers
 
180
     - Can append flags to only C+usergcc, all+usergcc, etc.
 
181
   * Configure now recognizes gnu compilers as gnu compiler regardless of
 
182
     compiler name when looking for default flags for user-override compilers
 
183
ATLAS 3.7.26 released 01/30/07, changes from 3.7.25:
 
184
   * Added line to all assembly files to declare them as not requiring an
 
185
     executable stack for Linux (apparently, lack broke SELinux).
 
186
   * Numerous assembly fixes, particularly forced use of .text and asmdecor
 
187
     in all x86 assembly files.
 
188
   * Fixed dnrm2's to call sqrtl to avoid gcc round-down.
 
189
ATLAS 3.7.25 released 01/22/07, changes from 3.7.24:
 
190
   * Added x87 nrm2 assembly kernels to avoid gcc probs, changed old 
 
191
     gcc-compiled nrm21 kernels to use double native precision for
 
192
     accumulator (breaks dnrm2 due to gcc's spurious round-down).
 
193
   * Changed Athlon64 and Core2Duo arch defaults to use load-at-bottom gemm
 
194
     kernels, which should reduce GEMM error
 
195
   * Changed configure to error out if ran in ATLAS source directory.
 
196
   * Changed all ATLAS/doc postscript files to .pdf
 
197
ATLAS 3.7.24 released 12/18/06, changes from 3.7.23:
 
198
   * Fixed alignment problem in x87 hammer kernel causing large performance
 
199
     losses for AMD64 machines.
 
200
ATLAS 3.7.23 released 12/07/06, changes from 3.7.22:
 
201
   * Fixed bug in Makefile causing repeated path
 
202
   * Added basic config support for Irix
 
203
   * Added basic arch defaults for MIPS R1[2,4,6]K using MIPSpro cc
 
204
   * Several small bug/compatibility fixes found by MIPS/cc install
 
205
   * Modified handling of MAFLAGS to prevent compiler hang for gcc3/Itan
 
206
     and cc/MIPS.
 
207
ATLAS 3.7.22 released 11/26/06, changes from 3.7.21:
 
208
   * Fixed bug in mmsearch's ProbeFPU that gave advantage to muladd=0, not =1.
 
209
   * Added support for Itanium's to config
 
210
     - Added extra lines with gcc 4's best flags to ?cases.flg
 
211
     - gcc 3 still produces best code by slight margin
 
212
     - Found arch defaults that do well for both gcc 3 & 4
 
213
   * Fixed complex C = A A' bug:
 
214
      https://sourceforge.net/tracker/index.php?func=detail&aid=1598272& \
 
215
              group_id=23725&atid=379482
 
216
ATLAS 3.7.21 released 11/18/06, changes from 3.7.20:
 
217
   * Made gemm call axpy-based GEMM when K < 4 && M >= 40 and
 
218
     no-copy code would be used -- should help bottom of LU recursion perf
 
219
   * Changed it so all F2C probes linked by Fortran do all I/O in Fortran,
 
220
     instead of printing from C (some platforms seem to have problems
 
221
     redirecting C I/O from a Fortran-linked program).
 
222
   * Several bug fixes
 
223
   * Added config support for solaris install
 
224
ATLAS 3.7.20 released 11/11/06, changes from 3.7.19:
 
225
   * Added ability to use Cij = instead of Cij += on first iteration of loop
 
226
     in emit_mm.c:
 
227
     - Max K unrolling where this is done is set by cpp macro MAX_CASG_KU
 
228
       to avoid code bloat (always works for full unroll)
 
229
     - For muladd=1, doesn't work if K is unknown at compile-time
 
230
     - Speeds up load-at-bottom and beta=0 code
 
231
   * Added ability to prefetch C when prefA selected and doing load-at-bottom
 
232
     or beta=0.  Gives nice speedup on HammerX2, need to test other machines
 
233
   * Added -falign-loops=4 to x87-using flags 
 
234
     - big speedup on Hammer, need to test on Intel
 
235
   * Several bug fixes to allow config/install to work on OSX/Core2Duo:
 
236
     - Fixed userindex so that it substitutes $(GOODGCC) for gcc in .SSE & .3DN
 
237
       files as well as in .flg
 
238
     - Made user override of 64 bits switch the probed assembly if it was
 
239
       probed to be x8632
 
240
     - Fixed freebsd archinfo syntax error (typo in code that fixed overflow).
 
241
     - Fixed typo in iamax_SSE.c
 
242
     - Replaced binary constant with hex in Core2Duo gemm kernel
 
243
     - For portability, rewrote saxpy_sse.c to avoid indirect jumps
 
244
ATLAS 3.7.19 released 10/14/06, changes from 3.7.18:
 
245
   * Fixed config so it defines [S,D]MAFLAGS, and changed muladd probe
 
246
     to use them
 
247
   * Fixed a couple more assembly files to work with OS X
 
248
   * User can now successfully override 32/64 bit choice on the configure
 
249
     line using -b [32,64].
 
250
     - Made config append -m32/-m64 to gnu compiler collection when ptrbits
 
251
       is overridden by the user on the configure line
 
252
     - Fixed error in userflag.c
 
253
     - Fixed lack of ' ' around C compiler names in GEMM files
 
254
     - After probes finished in config, made 32-bit override change detected
 
255
       asmb to 32 if it was presently 64
 
256
ATLAS 3.7.18 released 10/12/06, changes from 3.7.17:
 
257
   * Bugfix release only:
 
258
     - Fixed configure so that multiple compiler flags can be passed to config.
 
259
     - Adapted x86 assembly kernels in Level 1 & src directories so that they
 
260
       will also run under OS X
 
261
     - Added needed #define to ATLAS/src/invtst.c
 
262
     - Added fix to disambiguate int & long in f77/C interface
 
263
ATLAS 3.7.17 released 09/09/06, changes from 3.7.16:
 
264
   * Added ability to generate non-diagonally dominant positive definite
 
265
     matrices to Cholesky-based testers if POSDEFGEN is defined
 
266
   * Added new Core2Duo kernel (also think good for P4E64).
 
267
   * New Core2Duo arch defaults.
 
268
ATLAS 3.7.16 released 08/30/06, changes from 3.7.15:
 
269
   * Added flag --with-netlib-lapack to configure
 
270
   * Added src/testing f77 wrapper for QR
 
271
     - Still must write LU wrapper and test LLt
 
272
   * Added crude ability to call QR from slvtst
 
273
   * Added config support for Core2Duo and Core2Solo
 
274
   * Added architectural defaults for Core2Duo64SSE3
 
275
     - Hand-tuned cases not yet optimized; presently using P4-tuned kernels
 
276
   * Made "make install" allow copy of fortran interface to fail w/o dying
 
277
     (for users w/o fortran compiler)
 
278
ATLAS 3.7.15 released 08/22/06, changes from 3.7.14:
 
279
   * New x87 kernel that achieves over 90% of peak for double precision
 
280
     Opteron/Athlon-64.  Gemm runs at roughly same speed as old SSE kernel,
 
281
     but LU and Cholesky actually get a speedup.  The fp stack usage
 
282
     of this kernel was suggested by the new gcc.
 
283
     - New arch defaults for HAMMER64SSE[2,3]
 
284
   * Modified ILEANV so small problems aren't told to use the full ATLAS NB.
 
285
   * Fixed error in mmsearch.c that often caused complex performance to be
 
286
     misreported
 
287
   * Fixes/updates to ATLAS config system:
 
288
     - Added support for DESTDIR system on install target as in gnu
 
289
     - Made config kill any genned core and object files after run
 
290
     - Made "make build" delete all config executables
 
291
     - Added --nof77 to configure
 
292
     - Added "make check" as sanity test instead of "make test"
 
293
       + If --nof77 has been thrown, "make check" only calls C interface testers
 
294
     - Added probe for 3DNow, merged 3DNow 1 & 2.
 
295
ATLAS 3.7.14 released 08/17/06, changes from 3.7.13:
 
296
   * Fixes/updates to ATLAS config system:
 
297
     - Improved cpu throttling probe
 
298
     - Added compiler test so only compilers that work are chosen from defaults
 
299
     - Added simple C interoperation test
 
300
     - Fixed frontend/backend tmpnam collision prob (config[1,0].tmp)
 
301
     - Re-enabled parallel make support
 
302
     - Fixed buildinfo support
 
303
     - Added clock speed probe to config
 
304
     - Enabled "make time" to produce performance summary!
 
305
     - Added "make check" as alias to "make test" to make more like gnu
 
306
       -- Alias not working, need to check!
 
307
     - Fixed error in -Si nof77 1, which caused config to die w/o f77 compiler
 
308
   * Added new arch defaults for P4E[32,64]SSE3 and HAMMER64SSE3, which get
 
309
     better performance for gcc 4.2 (perf should still be OK for gcc 3).
 
310
ATLAS 3.7.13 released 07/26/06, changes from 3.7.12:
 
311
   * Mainly, fixes/updates to ATLAS config:
 
312
     - Added cpu throttling test to linux, and enabled it
 
313
     - Added "make install" to copy libs and includes
 
314
     - Fixed basic "make error_report"
 
315
     - Added 32/64 bit distinguishing in x86 arch def
 
316
     - Added "-Si nof77 1" to enable easier build wt no f77 compiler
 
317
     - Added "--help" handling to configure
 
318
     - Added "-Si archdef 0" to suppress use of architectural defaults
 
319
     - Added "-Si cputhrchk 0" to suppress CPU throttling error exit
 
320
ATLAS 3.7.12 released 07/19/06, changes from 3.7.11:
 
321
   * Completely rewrote configure handling to make ATLAS act more like
 
322
     gnu configure
 
323
     - You now build ATLAS in an arbitrary build directory
 
324
       + /path/to/ATLAS/configure ; make build ; make test
 
325
     - Read ATLAS/INSTALL.txt for directions, everything is changed!
 
326
     - Presently, only supported OSes are Linux and FreeBSD (OSX). 
 
327
       Will be adding more in subsequent developer releases.
 
328
   * Added support for prefetch in generator, mmsearch.c, fc.c, etc.
 
329
   * Improved broken GetUserNB in ummsearch.c, which prevented good user cases
 
330
     from being found on many systems
 
331
   * mmsearch.c improvements:
 
332
     - Added prefetch searching
 
333
     - Updated FindMUNU to suggest 1-D vals on x86 boxes (2-op assembler).
 
334
     - Made sure GetNO1D always returns false for x86 boxes (2-op assembler)
 
335
     - Added special case for large number of registers (eg. Itanium) to
 
336
       speed up munu search (searches near-square only)
 
337
       + Untested, and likely needs fixing
 
338
     - several small error-handling issues
 
339
   * Improved masearch.c & L1CacheSize.c to make loop-removal by compiler
 
340
     less likely.
 
341
ATLAS 3.7.11 released 07/21/05, changes from 3.7.10:
 
342
   * This is a bugfix release:
 
343
     - Fixed doc path errors caught by Kate Minola
 
344
     - Fixed f77getrf/getri FunkyInts declaration
 
345
     - Fixed Level 1 ref stX/StX typo in ATL_[dz,sc]refnrm2 caught 
 
346
       by Neil James
 
347
     - Fixed assembly typo in ATL_dmm6x1x72_sse2 caught by Simon Perreault
 
348
     - Added Dean's x86 assembly probe as backup for uname x8664 probe,
 
349
       as Kate Minola reports uname probe doesn't work under solaris/x8664
 
350
ATLAS 3.7.10 released 04/24/05, changes from 3.7.9:
 
351
   * Updated config.c to use Dean Gaudet's contributed CPUID probe to get
 
352
     relatively OS-independent x86 arch info.
 
353
   * Fixed problem where altivec makes config think not using arch def flags.
 
354
   * Added support for EM64T:
 
355
     - Updated config to search for x86_64 independant hammer arch
 
356
     - Updated P4E assembly kernels to run under x86_64
 
357
     - Updated hammer kernels to not use 3DNow inst if compiled on Intel
 
358
       + cpp macro ATL_Has3DNow is now defined on sys possessing 3DNow!,
 
359
         even if SSE is the selected SIMD paradigm
 
360
     - Generated P4E64 arch defaults
 
361
   * Added support for 64 bit ABI PowerPC Linux:
 
362
     - Updated config to search for 64 bit PPC
 
363
     - New macro ATL_USE64BITS set for all 64 bit ABI
 
364
     - Updated G4 assembler kernel to handle 64 and 32 bit Linux ABIs
 
365
     - Updated G5 assembler kernel to handle 64 and 32 bit Linux ABIs
 
366
ATLAS 3.7.9  released 04/22/05, changes from 3.7.8:
 
367
   * In order to get icc to auto-vectorize, changed all ref L1 for loops:
 
368
        for (i=0; i != N; i++) ---> for (i=0; i < N; i++)
 
369
     also changed code generator (only if ATL_SSE1 defined):
 
370
        for (k=N; k; k--)      ---> for (k=0; k < N; k++)
 
371
   * icc arch defaults for P4e (using autovectorization)
 
372
   * Fixed errors in FA_malloc
 
373
   * Changed mmsearch to use median of CPU times and min of WALL (no more tol)
 
374
   * Updated config to recognize the G5 (PPC970FX) and handle apple gcc
 
375
   * Updated AltiVec kernel to use line fetch for G5
 
376
   * Added G5-specific DGEMM assembly kernel
 
377
   * Arch defaults for G5
 
378
ATLAS 3.7.8 released 07/24/04, changes from 3.7.7:
 
379
   * Better [d,z]GEMM kernel for Transmeta Efficeon
 
380
ATLAS 3.7.7 released 07/17/04, changes from 3.7.6:
 
381
   * Better [d,z]GEMM kernel for Transmeta Efficeon
 
382
ATLAS 3.7.6 released 07/16/04, changes from 3.7.5:
 
383
   * Arch defaults & config support for Transmeta Efficeon.
 
384
   * New single prec SSE kernel, added to P4E arch defaults.
 
385
ATLAS 3.7.5 released 06/27/04, changes from 3.7.4:
 
386
   * Added PA-RISC 2.0 config support, arch defaults, & assembly kernels
 
387
ATLAS 3.7.4 released 06/12/04, changes from 3.7.3:
 
388
   * Modified L1 testers so they all take same flags
 
389
   * Modified L1 timers so they all take same flags (not same as testers)
 
390
   * Modified L1 & L2 tester & timers so they all take force-alignment flags:
 
391
     -Fa 16 -Fx -32 : force 16-byte align for A, misalign X to 32 bytes
 
392
ATLAS 3.7.3 released 03/20/04, changes from 3.7.2:
 
393
   * Added P4E (prescott) support
 
394
   * Changed config to distinguish between P4 implementations based on model
 
395
     number; presently knows about P4 (models 0-2) and prescott (model 3)
 
396
   * Added SSE3 to ISA probe
 
397
   * Updated s/d P4 kernels (not cleanup yet) to work with SSE3, and smaller
 
398
     block sizes that prescott likes
 
399
   * Added architectural defaults for P4E (prescott)
 
400
ATLAS 3.7.2 released 02/29/04, changes from 3.7.1:
 
401
   * Added empirical tuning of TRSM_NB parameter
 
402
ATLAS 3.7.1 released 02/21/04, changes from 3.7.0:
 
403
   * Increased 32-bit hammer single precision gemm to 64 bit speed
 
404
ATLAS 3.7.0 released 02/14/04 (I love optimization), changes from 3.6.0:
 
405
   * Increased 32-bit hammer double precision gemm to 64 bit speed
 
406
 
 
407
ATLAS 3.6.0 released 12/22/03, changes from 3.4.2:
2
408
   * Gemm speedups for most architectures
3
409
     - Hammer (Opteron/Athlon-64)
4
410
     - IA64 family
17
423
     - IBM Power 4 arch defaults included
18
424
 *** See developer ChangeLog below for details
19
425
 
20
 
ATLAS 3.6.0, changes from 3.5.22:
 
426
ATLAS 3.6.0 released 12/21/03, changes from 3.5.22:
21
427
   * Forced all non-x86 archs to have max TRSM_NB of 8, to prevent massive
22
428
     Cholesky performance dropoff (essentially a performance bug)
23
 
ATLAS 3.5.22, changes from 3.5.21:
 
429
ATLAS 3.5.22 released 12/20/03, changes from 3.5.21:
24
430
   * Added ifort support under Windows
25
431
   * Small fixes for the timers
26
432
   * Made config default to not searching for BLAS
27
 
ATLAS 3.5.21, changes from 3.5.20:
 
433
ATLAS 3.5.21 released 12/19/03, changes from 3.5.20:
28
434
   * Added MVC support, plus non-gemm arch defaults for P4
29
435
     (thus './xconfig -b 0 -c mvc -f cvf' now gets you very good CVF lib)
30
436
   * Defined symbols required for dynamic library
31
437
   * Fixed bug in GetSysSum
32
438
   * Numerous small config changes, mainly to make things smoother under windows
33
 
ATLAS 3.5.20, changes from 3.5.19:
 
439
ATLAS 3.5.20 released 12/18/03, changes from 3.5.19:
34
440
   * Config fixes
35
441
   * Bunch of changes necessary to make CVF/icl work under windows
36
 
ATLAS 3.5.19, changes from 3.5.18:
 
442
ATLAS 3.5.19 released 12/17/03, changes from 3.5.18:
37
443
   * Numerous config bug fixes
38
444
   * Added dummy ATL_cpmmJIKF symbol to lib (.so workaround)
39
445
   * Arch defaults for US5 cc & gcc (missing L1 defaults for cc)
42
448
   * Added back winf77 stuff for Windows
43
449
     - missing __alloca prevents CVS from linking, may be compiler bug:
44
450
       http://gcc.gnu.org/bugzilla/show_bug.cgi?id=8750
45
 
ATLAS 3.5.18, changes from 3.5.17:
 
451
ATLAS 3.5.18 released 12/15/03, changes from 3.5.17:
46
452
   * Fixed bug killing multithreaded ATHLON
47
453
     - Replaced Peter adaptation of Julian's kernel with my athlon kernel
48
454
       for all cleanup and all precisions other than double real
49
455
   * Rewrote compiler and flag handling in config, again
50
456
     - do ./xconfig --help for new options
51
457
   * Better compiler flags for gcc on IA64 (3.5.16 "improvement" was mistake)
52
 
ATLAS 3.5.17, changes from 3.5.16:
 
458
ATLAS 3.5.17 released 12/13/03, changes from 3.5.16:
53
459
   * Numerous small config fixes
54
460
   * Removed compiler & flag mentions from GER cases files
55
461
   * Architectural defaults & config flags for intel compilers on IA64 & PIII
62
468
       + ATLAS/src/blas/level3/kernel/ATL_syrk2_put[L,U].c
63
469
       + ATLAS/src/blas/level3/ATL_trsm.c
64
470
     - If you don't use arch defaults, other icc bugs can kill you
65
 
ATLAS 3.5.16, changes from 3.5.15:
 
471
ATLAS 3.5.16 released 12/10/03, changes from 3.5.15:
66
472
   * Added command-line selection of compilers for config
67
473
   * Added pthread options to compile flags for MP FreeBSD
68
474
   * Better compiler flags boosts Itanium 2 performance
74
480
     - Don't use: presently they fail tester, probably compiler error
75
481
   * New AthlonSSE1 defaults, courtesy of Tim Mattox
76
482
   * Fixed bug causing hangs for installs with large NB and small CacheEdge
77
 
ATLAS 3.5.15, changes from 3.5.14:
 
483
ATLAS 3.5.15 released 12/08/03, changes from 3.5.14:
78
484
   * Added arch defaults and config support for IBM Power4
79
485
   * New PIIISSE1 arch defaults
80
486
   * Updated L1CacheSize for crude timer resolution fix
81
487
   * Changed cygwin cp fix from @ - cp to -@ cp (AIX Make requirement)
82
 
ATLAS 3.5.14, changes from 3.5.13:
 
488
ATLAS 3.5.14 released 12/07/03, changes from 3.5.13:
83
489
   * Improved L1 and CacheEdge detection
84
490
   * All of Camm's new stuff in and working:
85
491
     - CGEMV improved for Pentium 4 defaults
89
495
     - Improved Level 2 from Camm's stuff
90
496
     - Improved Level 3 from Camm and my P4 cleanup
91
497
   * Improved 64 bit Hammer [d,z]GEMM M cleanup using new 1x14 kernel
92
 
ATLAS 3.5.13, changes from 3.5.12:
 
498
ATLAS 3.5.13 released 11/30/03, changes from 3.5.12:
93
499
   * Row-major, complex Cholesky error fixes
94
500
   * New, and *much* more efficient Athlon 3Dnow! kernel from
95
501
     Tim Mattox & Hank Dietz
100
506
   * More arch defaults, including BOZOL1, to allow skipping L1 tuning
101
507
   * Added version number to Make.ARCH and install log files.
102
508
   * Improved still-crappy cleanup search
103
 
ATLAS 3.5.12, changes from 3.5.11:
 
509
ATLAS 3.5.12 released 10/05/03, changes from 3.5.11:
104
510
   * New assembly UltraSparc kernels for both Ultra2 & 3.
105
511
   * New arch defaults for UltraSparcs
106
 
ATLAS 3.5.11, changes from 3.5.10:
 
512
ATLAS 3.5.11 released 09/27/03, changes from 3.5.10:
107
513
   * Windows-specific makefile changes to match new cygwin behavior
108
 
ATLAS 3.5.10, changes from 3.5.9:
 
514
ATLAS 3.5.10 released 09/13/03, changes from 3.5.9:
109
515
   * Opteron speedups, all precisions Level 3
110
516
   * SPRK bug fixes
111
 
ATLAS 3.5.9, changes from 3.5.8:
 
517
ATLAS 3.5.9 released 08/27/03, changes from 3.5.8:
112
518
   * Recursive partitioning algorithm for when we can't copy A up front in
113
519
     SYRK/HERK
114
520
   * Itanium 2 gemm kernel, speeding up entire Level 3 BLAS
115
521
   * Arch defaults and config support for Itanium 2
116
522
   * Arch defaults & config support for USIII (presently fails sanity test)
117
523
   * Various bug fixes
118
 
ATLAS 3.5.8, changes from 3.5.7:
 
524
ATLAS 3.5.8 released 08/09/03, changes from 3.5.7:
119
525
   * Direct gemm-kernel [c,z]SYRK and xHERK implementation significantly
120
526
     boosts SYRK/HERK and Cholesky performance
121
527
   * Numerous bug fixes
122
 
ATLAS 3.5.7, changes from 3.5.6:
 
528
ATLAS 3.5.7 released 07/15/03, changes from 3.5.6:
123
529
   * Direct gemm-kernel implementation of SYRK significantly boosts SYRK and
124
530
     Cholesky performance (only in real precisions so far).
125
531
   * Fixed some errors that occur when using Solaris make rather than gnu.
126
 
ATLAS 3.5.6, changes from 3.5.5:
 
532
ATLAS 3.5.6 released 06/26/03, changes from 3.5.5:
127
533
   * Opteron speedups:
128
534
     - Full cleanup for Opteron [d,z]GEMM
129
535
     - Better CacheEdge improves threaded GEMM speed
131
537
     - Removed some extraneous characters my windows changes introduced
132
538
       in assembler kernels
133
539
     - Fixed errataed error in clapack.h
134
 
ATLAS 3.5.5, changes from 3.5.4:
 
540
ATLAS 3.5.5 released 06/22/03, changes from 3.5.4:
135
541
   * More Opteron [d,z]GEMM speedups
136
542
   * Small Pentium 4 [d,z]GEMM speedup
137
543
   * Fixes to support cygwin/windows compilation
138
544
     - Removed reliance on case-sensitive archiver
139
545
     - Workaround for windows assembly name-mangling
140
546
     - Forced config to look for gcc-2
141
 
ATLAS 3.5.4, changes from 3.5.3:
 
547
ATLAS 3.5.4 released 06/15/03, changes from 3.5.3:
142
548
   * Opteron [d,z]GEMM speedup
143
 
ATLAS 3.5.3, changes from 3.5.2:
 
549
ATLAS 3.5.3 released 06/14/03, changes from 3.5.2:
144
550
   * Fixed Athlon STRSM so sLU is sped up by new SGEMM from 3.5.2
145
551
   * Fixed aligned access error in iamax_sse
146
 
ATLAS 3.5.2, changes from 3.5.1:
 
552
ATLAS 3.5.2 released 05/03/03, changes from 3.5.1:
147
553
   * Athlon GEMM speedups for all precisions
148
 
ATLAS 3.5.1, changes from 3.5.0:
 
554
ATLAS 3.5.1 released 04/21/03, changes from 3.5.0:
149
555
   * Added AltiVec support via gcc 3.3 or newer (older gcc buggy)
150
556
     -  This gives Linux AltiVec speedups for first time
151
557
   * Added support for OSX and Linux PPC assembler dialects to config
152
 
ATLAS 3.5.0, selected changes from 3.4.0:
 
558
ATLAS 3.5.0 released 01/21/03, selected changes from 3.4.0:
153
559
   * Added support for finding assembly dialect to config
154
560
   * Redirected ISA extension output in config
155
561
   * Added x86-64 support to config
161
567
     - Pentium III, all precisions
162
568
     - UltraSparc, big boost for single precision
163
569
 
164
 
ATLAS 3.4.0, selected changes from 3.2.1:
 
570
ATLAS 3.4.2 released 08/19/03, bugfix release.
 
571
ATLAS 3.4.1 released 06/17/02, bugfix release.
 
572
ATLAS 3.4.0 released 05/11/02, selected changes from 3.2.1:
165
573
   * Optimization of Level 1 BLAS
166
574
   * Additional architecture-specific support:
167
575
     - OS X and AltiVec support
260
668
   * Small-case LU & Cholesky speedup
261
669
   * Complex TRSM speedup
262
670
 
263
 
ATLAS 3.2 (stable), released December 2000.  The highlights of
 
671
ATLAS 3.2.1, released 03/23/01, bugfix release.
 
672
ATLAS 3.2 (stable), released 12/20/00.  The highlights of
264
673
changes from v3.0Beta are:
265
674
  ** SMP support via posix threads for Level 3 BLAS
266
675
  ** Addition of infrastructure for contribution of kernels, thus allowing: