summaryrefslogtreecommitdiff
path: root/ChangeLog
blob: 933edc964c88b216f5287124181b01241e851eca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
Tue Mar 18 14:30:44 2008  Google Inc. <opensource@google.com>

	* google-perftools: version 0.96 release
	* major atomicops rewrite; fixed atomic ops code for linux/ppc (vchen)
	* nix the stacktrace library; now build structure is simpler (csilvers)
	* Speed up heap-checker, and reduce extraneous logging (maxim)
	* Improve itimer code for NPTL case (cgd)
	* Add source code annotations for use by valgrind, etc (kcc)
	* PORTING: Fix high resolution timers for Mac OS X (adlr)

Tue Feb 19 12:01:31 2008  Google Inc. <opensource@google.com>

	* google-perftools: version 0.95.1 release  (bugfix release)
	* x86_64 compile-fix: nix pread64 and pwrite64 (csilvers)
	* more heap-checker debug logging (maxim)
	* minor improvement to x86_64 CycleClock (gpike)

Tue Feb 12 12:28:32 2008  Google Inc. <opensource@google.com>

	* google-perftools: version 0.95 release
	* Better -- not perfect -- support for linux-ppc (csilvers)
	* Fix race condition in libunwind stacktrace (aruns)
	* Speed up x86 spinlock locking (m3b)
	* Improve heap-checker performance (maxim)
	* Heap checker traverses more ptrs inside heap-alloced objects (maxim)
	* Remove deprecated ProfilerThreadState function (cgd)
	* Update libunwind documentation for statically linked binaries (aruns)

Mon Dec  3 23:51:54 2007  Google Inc. <opensource@google.com>

	* google-perftools: version 0.94.1 release  (bugfix release)
	* Fix missing #includes for x86_64 compile using libunwind (csilvers)

Thu Nov 29 07:59:43 2007  Google Inc. <opensource@google.com>

	* google-perftools: version 0.94 release
	* PORTING: MinGW/Msys support -- runs same code as MSVC does (csilvers)
	* PORTING: Add NumCPUs support for Mac OS X (csilvers)
	* Work around a sscanf bug in glibc(?) (waldemar)
	* Fix Windows MSVC bug triggered by thread deletion (csilvers)
	* Fix bug that triggers in MSVC /O2: missing volatile (gpike)
	* March-of-time support: quiet warnings/errors for gcc 4.2, OS X 10.5
	* Modify pprof so it works without nm: useful for windows (csilvers)
	* pprof: Support filtering for CPU profiles (cgd)
	* Bugfix: have realloc report to hooks in all situations (maxim)
	* Speed improvement: replace slow memcpy with std::copy (soren)
	* Speed: better iterator efficiency in RecordRegionRemoval (soren)
	* Speed: minor speed improvements via better bitfield alignment (gpike)
	* Documentation: add documentation of binary profile output (cgd)
	
Fri Aug 17 12:32:56 2007  Google Inc. <opensource@google.com>

	* google-perftools: version 0.93 release
	* PORTING: everything compiles on Solaris, OS X, FreeBSD (see INSTALL)
	* PORTING: cpu-profiler works on most platforms (much better GetPC())
	* PORTING: heap-profiler works on most platforms
	* PORTING: improved windows support, including release builds
	* No longer build or run ptmalloc tests by default
	* Add support for using memfs filesystem to allocate memory in linux
	* WINDOWS: give debug library and release library different names
	
Tue Jul 17 22:26:27 2007  Google Inc. <opensource@google.com>

	* google-perftools: version 0.92 release
	* PERFORMANCE: use a packed cache to speed up tcmalloc
	* PORTING: preliminary windows support! (see README.windows)
	* PORTING: better support for solaris, OS X, FreeBSD (see INSTALL)
	* Envvar support for running the heap-checker under gdb
	* Add weak declarations to maybe_threads to fix no-pthreads compile bugs
	* Some 64bit fixes, especially with pprof
	* Better heap-checker support for some low-level allocations
	* Fix bug where heap-profiles would sometimes get truncated
	* New documentation about how to handle common heap leak situations
	* Use computed includes for hash_map/set: easier config
	* Added all used .m4 templates to the distribution

Wed Apr 18 16:43:55 2007  Google Inc. <opensource@google.com>

	* google-perftools: version 0.91 release
	* Brown-paper-bag bugfix: compilation error on some x86-64 machines

Fri Apr 13 14:50:51 2007  Google Inc. <opensource@google.com>

	* google-perftools: version 0.90 release
	* (As the version-number jump hints, this is a major new release:
	  almost every piece of functionality was rewritten.  I can't do
	  justice to all the changes, but will concentrate on highlights.)
	*** USER-VISIBLE CHANGES:
	* Ability to "release" unused memory added to tcmalloc
	* Exposed more tweaking knobs via environment variables (see docs)
	* pprof tries harder to map addresses to functions
	* tcmalloc_minimal compiles and runs on FreeBSD 6.0 and Solaris 10
	*** INTERNAL CHANGES:
	* Much better 64-bit support
	* Better multiple-processor support (e.g. multicore contention tweaks)
	* Support for recent kernel ABI changes (e.g. new arg to mremap)
	* Addition of spinlocks to tcmalloc to reduce contention cost
	* Speed up tcmalloc by using __thread on systems that support TLS
	* Total redesign of heap-checker to improve liveness checking
	* More portable stack-frame analysis -- no more hard-coded constants!
	* Disentangled heap-profiler code and heap-checker code
	* Several new unittests to test, e.g., thread-contention costs
	* Lots of small (but important!) bug fixes: e.g., fixing GetPC on amd64
	*** KNOWN PROBLEMS:
	* CPU-profiling may crash on x86_64 (64-bit) systems.  See the README
	* Profiling/heap-checking may deadlock on x86_64 systems.  See README

Wed Jun 14 15:11:14 2006  Google Inc. <opensource@google.com>

	* google-perftools: version 0.8 release
	* Experimental support for remote profiling added to pprof (many)
	* Fixed race condition in ProfileData::FlushTable (etune)
	* Better support for weird /proc maps (maxim, mec)
	* Fix heap-checker interaction with gdb (markus)
	* Better 64-bit support in pprof (aruns)
	* Reduce scavenging cost in tcmalloc by capping NumMoveSize (sanjay)
	* Cast syscall(SYS_mmap); works on more 64-bit systems now (menage)
	* Document the text output of pprof! (csilvers)
	* Better compiler support for no-THREADS and for old compilers (csilvers)
	* Make libunwind the default stack unwinder for x86-64 (aruns)
	* Somehow the COPYING file got erased.  Regenerate it (csilvers)

Thu Apr 13 20:59:09 2006  Google Inc. <opensource@google.com>

	* google-perftools: version 0.7 release
	* Major rewrite of thread introspection for new kernels (markus)
	* Major rewrite of heap-checker to use new thread tools (maxim)
	* Add proper support for following data in thread registers (maxim)
	* Syscall support for older kernels, including _syscall6 (markus)
	* Support PIC mode (markus, mbland, iant)
	* Better support for running in non-threaded contexts (csilvers)

Fri Jan 27 14:04:27 2006  Google Inc. <opensource@google.com>

	* google-perftools: version 0.6 release
	* More sophisticated stacktrace usage, possibly using libunwind (aruns)
	* Update pprof to handle 64-bit profiles (dehnert)
	* Fix GetStackTrace to correctly return top stackframe (sanjay)
	* Add ANSI compliance for new and new[], including new_handler (jkearney)
	* More accuracy by reading ELF files directly rather than objdump (mec)
	* Add readline support for pprof (addi)
	* Add #includes for PPC (csilvers)
	* New PC-detection routine for ibook powerpc (asbestoshead)
	* Vastly improved tcmalloc unittest (csilvers)
	* Move documentation from /usr/doc to /usr/share/doc

Mon Nov 14 17:28:59 2005  Google Inc. <opensource@google.com>

	* google-perftools: version 0.5 release
	* Add va_start/va_end calls around vsnprintf() (csilvers)
	* Write our own __syscall_return(), since it's not defined
	  consistently on all 64-bit linux distros (markus)

Wed Oct 26 15:19:16 2005  Google Inc. <opensource@google.com>

	* google-perftools: version 0.4 release
	* Decrease fragmentation in tcmalloc (lefevere)
	* Support for ARM in some of the thread-specific code (markus)
	* Turn off heap-checker for statically-linked binaries, which
	  cause error leak reports now (etune)
	* Many pprof improvements, including a command-line interface (jeff)
	* CPU profiling now automatically affects all threads in linux 2.6.
	  (Kernel bugs break CPU profiling and threads in linux 2.4 a bit.)
	  ProfilerEnable() and ProfilerDisable() are deprecated.  (sanjay)
	* tcmalloc now correctly intercepts memalign (m3b, maxim)
	* Syntax fix: added missing va_end()s.  Helps non-gcc compiling (etune)
	* Fixed a few coredumper bugs: race condition after PTRACE_DETACH,
	  ignore non-aligned stackframe pointers (markus, menage)
	* 64-bit cleanup, especially for spinlock code (etune) and mmap (sanjay)
	* Better support for finding threads in linux (markus)
	* tcmalloc now tracks those stack traces that allocate memory (sanjay)
	* Work around a weird setspecific problem (sanjay)
	* Fix tcmalloc overflow problems when an alloc is close to 2G/4G (sanjay)

Fri Jun 24 18:02:26 2005  Google Inc. <opensource@google.com>

	* google-perftools: version 0.3 release
	* Add missing errno include for one of the unittests (csilvers)
	* Reduce tcmalloc startup memory from 5M to 256K (sanjay)
	* Add support for mallopt() and mallinfo (sanjay)
	* Improve stacktrace's performance on some 64-bit systems (etune)
	* Improve the stacktrace unittest (etune)

Tue May 31 08:14:38 2005  Google Inc. <opensource@google.com>

	* google-perftools: version 0.2 release
	* Use mmap2() instead of mmap(), to map more memory (menage)
	* Do correct pthread-local checking in heap-checker! (maxim)
	* Avoid overflow on 64-bit machines in pprof (sanjay)
	* Add a few more GetPC() functions, including for AMD (csilvers)
	* Better method for overriding pthread functions (menage)
	* (Hacky) fix to avoid overwriting profile files after fork() (csilvers)
	* Crashing bugfix involving dumping heaps on small-stack threads (tudor)
	* Allow library versions with letters at the end (csilvers)
	* Config fixes for systems that don't define PATH_MAX (csilvers)
	* Confix fixes so we no longer need config.h after install (csilvers)
	* Fix to pprof to correctly read very big cpu profiles (csilvers)
	* Fix to pprof to deal with new commandline flags in modern gv's
	* Better error reporting when we can't access /proc/maps (etune)
	* Get rid of the libc-preallocate code (which could crash on some
	  systems); no longer needed with local-threads fix (csilvers)

Tue Feb 8 09:57:17 2005  Google Inc. <opensource@google.com>

	* google-perftools: initial release:
	  The google-perftools package contains some utilities to improve
	  and analyze the performance of C++ programs.  This includes an
	  optimized thread-caching malloc() and cpu and heap profiling
	  utilities.