Fri Oct 29 13:55:06 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* ChangeLog: A real ChangeLog, produced by rcs2log.

	* superblock.h:
	Added a cache pad to avoid false sharing of superblock data.

	* NEWS: Brought the NEWS file in line with GNU standards.

	* heap.h: Subtracted the size of a superblock from NUMBER_OF_BYTES.

Thu Oct 28 00:59:53 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* config.h: Increased cache line size (for SGI O2K).

Wed Oct 27 20:43:20 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* threadheap.h, wrapper.h, processheap.h, superblock.h, threadheap.cpp, block.h, heap.cpp, heap.h:
	Comment updates.

	* configure.in, configure:
	Disabled inclusion of -lpthread when using sproc.

	* configure, configure.in: Now SPROC is defined as 0 by default.

	* configure, configure.in, Makefile.am: Updated to version 1.2.

	* README: Changed date on README.

	* ChangeLog: Updated ChangeLog to version 1.2.

	* README: Updated README to include sproc target.

	* configure, configure.in: Added sproc options.

	* Makefile.orig, arch-specific.cpp, configure.in:
	Improved sproc handling.

Tue Oct 26 22:27:48 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* arch-specific.cpp, arch-specific.h: First run at SPROC stuff.

Thu Oct 21 03:28:16 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* arch-specific.cpp:
	Reset spin count to zero after every iteration in our lock implementation.

Wed Oct 20 21:49:54 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* Makefile.orig: Removed dependence on UltraSPARC.

	* Makefile.orig: Needed -lrt for Solaris.

	* arch-specific.h, config.h, arch-specific.cpp:
	More fun with spin locks.

	* heap.h: Moved out the spin part (should be in arch-specific anyway).

	* heap.cpp: Fixed the size table.

	* maketable.cpp: Fixed the size table generation.

	* arch-specific.cpp, arch-specific.h, config.h:
	Added 'USERLOCKS' option -- user-level spin locks -- which are much faster on Linux.

Tue Oct 19 16:12:05 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* arch-specific.cpp, block.h, privateheap.cpp, threadheap.cpp:
	Removed some UNIX dependencies.

	* timer.h, arch-specific.cpp, arch-specific.h:
	More Windows-related changes.

Sat Oct 16 20:23:31 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* testmymalloc.cpp, wrapper.cpp, Makefile.am, Makefile.in, arch-specific.cpp, arch-specific.h, processheap.cpp:
	Made a variety of Windows-related changes.

	* config.h: Changed CACHE_LINE (SPARC's L2 size is 64, not 128 bytes).

Fri Oct 15 14:48:28 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* arch-specific.cpp:
	Changed mutex_unlock (for Windows NT) to use InterlockedExchange so it will work on Alphas, too.

Tue Oct 12 21:37:09 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* Makefile.in, README, INSTALL, Makefile.am: More minor updates.

	* benchmarks/shbench/Makefile.in, benchmarks/linux-scalability/Makefile.in, benchmarks/larson/Makefile.in, configure, configure.in:
	More configuration improvements.

	* benchmarks/shbench/timer.h: Fixed to work on the SGI.

	* maketable.cpp: Added UL to the table output.

	* heap.cpp: Made the table a constant (to be built by maketable.cpp).

	* maketable.cpp: Added the table generator.

	* README: More changes for version 1.1.

	* Makefile.orig: The original Makefile.

	* README: Just added a newline.

	* NEWS: Put something in NEWS.

	* README, docs/UTCS-TR99-22.ps.gz:
	Moved the tech report into a docs folder.

	* benchmarks/larson/driver_mt.C, benchmarks/linux-scalability/linux-scalability.c:
	Fixed some compilation bugs, added local library path to the compiles.

	* Makefile.am, Makefile.in: Minor Linux fixes.

Mon Oct 11 21:27:33 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* configure, configure.in: More fixes.

	* configure, configure.in, INSTALL, README:
	Fixed some Windows NT-specific foo.

	* Makefile.am, Makefile.in, README: More minor changes.

	* Makefile.am: Changed version number for shared lib.

	* Makefile.in, configure, configure.in, ChangeLog, Makefile.am:
	Version 1.1.

	* INSTALL: Basic installation instructions.

	* autoconf/mkinstalldirs, autoconf/ltconfig, autoconf/ltmain.sh, autoconf/missing, autoconf/config.guess, autoconf/config.sub, autoconf/install-sh, configure.in, NEWS, README, aclocal.m4, configure, Makefile.am, Makefile.in:
	Incorporated the Ganesan Rajagopal scripts (slightly modified).

Thu Oct  7 16:37:21 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* block.h:
	Disabled copying and assignment; added initialization of _next field.

	* threadheap.h: Removed _busy field.

Wed Oct  6 20:10:23 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* privateheap.h: Fixed privateheap unlock method.

Tue Oct  5 20:53:02 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* README: New release date.

	* heap.cpp, heap.h: Fixed some wackiness with the size classes.

	* arch-specific.cpp, arch-specific.h, testmymalloc.cpp, README:
	Rolled in more Windows NT changes.

Mon Oct  4 19:07:13 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* config.h, timer.h, arch-specific.cpp:
	Rolled in some SGI-specific changes.

	* ChangeLog: Initial check-in.

	* arch-specific.cpp, processheap.h, superblock.cpp, superblock.h:
	Removed some reliance on Suns (yow!).

Sun Oct  3 19:31:00 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* benchmarks/README: Initial check-in.

	* README: Updated date.

	* arch-specific.cpp: Fixed ifndef (changed to ifdef).

	* privateheap.h, arch-specific.h, heap.cpp, heap.h, privateheap.cpp, arch-specific.cpp:
	Incorporated more changes for the Windows NT build.

Sat Oct  2 04:04:19 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* arch-specific.cpp, arch-specific.h: More Windows foo.

	* threadheap.cpp, threadtest.cpp, processheap.cpp, processheap.h, superblock.cpp, superblock.h, heap.cpp, heap.h, privateheap.cpp, privateheap.h, arch-specific.cpp, arch-specific.h:
	Added arch-specific files; changed all architecture-specific (read: UNIX) commands to use these wrappers.

Thu Sep 30 21:17:43 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* testmymalloc.cpp: Restored iostream.h (DOH DOH DOH).

Wed Sep 29 13:22:06 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* superblock.h, testmymalloc.cpp, threadheap.cpp, privateheap.cpp, processheap.cpp:
	Removed iostream.h includes.

	* timer.h, wrapper.cpp, wrapper.h, superblock.h, testmymalloc.cpp, threadheap.cpp, threadheap.h, threadtest.cpp, heapstats.h, processheap.cpp, processheap.h, superblock.cpp, README, block.h, config.h, heap.cpp, heap.h:
	Added preambles to everything.

	* config.h, README: More additions and deletions.

	* timer.h, processheap.h, threadheap.cpp, config.h, heap.cpp, heap.h, ChangeLog, INSTALL, COPYING:
	Cleanup time.

Tue Sep 28 22:11:06 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* heap.h, config.h: Minor changes (removed other targets).

	* README: More README info.

	* AUTHORS, COPYING, ChangeLog, INSTALL: Initial revision

	* AUTHORS, COPYING, ChangeLog, INSTALL, README: new project started

Wed Sep 22 13:42:29 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* privateheap.cpp: Some bug fixes.

	* block.h: Changed dummy (pad) variable names to avoid clashes.

Tue Sep 21 18:43:39 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* privateheap.cpp, privateheap.h: Fixed a carve-off problem.

	* config.h: Updated a comment.

	* superblock.cpp:
	Added (still not working?) mmap stuff; currently disabled.

	* config.h:
	Fixed a comment; returned two flags to their appropriate defaults.

Mon Sep 20 05:27:44 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* processheap.h, threadheap.cpp, privateheap.cpp, processheap.cpp:
	Fixed some screwiness with fragmentation stats; added a Linux-specific hack to get more reasonable thread-to-processor mapping.

	* processheap.cpp, processheap.h, threadheap.cpp, privateheap.cpp, privateheap.h:
	Added locks for statistics gathering.

Sun Sep 19 06:17:12 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* processheap.h, config.h, heap.h, processheap.cpp:
	Changed the size class base to 1.2 (and upped the number of size classes to 128); fixed the fragmentation calculations.

	* privateheap.cpp:
	Slight tweak required to get privateHeap to work with the new, more flexible size class system.

	* privateheap.cpp, privateheap.h:
	The private heap variant (for experimental use only).

	* processheap.h, config.h, heap.h:
	A few more comments and some consolidation of constants.

	* heap.cpp, heap.h:
	Removed big ugly static block; moved initialization of the sizeTable to the heap's constructor. Changed some names to reflect the 'private-members-have-underscores' convention.

Sat Sep 18 23:27:18 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* superblock.cpp, superblock.h, testmymalloc.cpp, threadheap.cpp, block.h, config.h, heap.cpp, heap.h:
	Now the size class base is 'flexible'; this allows us to dramatically reduce internal fragmentation.

	* config.h: Avoid redefining _REENTRANT.

	* block.h: A variety of fixes for non-standard targets.

Wed Sep 15 22:39:16 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* benchmarks/larson/driver_mt.C:
	Disabled the warmup thing, added a bogus print of seconds for the Perl script that processes the data.

	* config.h, superblock.h:
	Commit the actual values used for the experiments.

Mon Sep 13 15:46:01 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* threadtest.cpp, processheap.cpp, processheap.h, superblock.h, threadheap.cpp, heap.cpp:
	Fixed a MAJOR bug that was killing us; moved around some code and added some useful comments.

	* heap.cpp, heap.h, superblock.cpp, superblock.h:
	Simplified (and fixed) the superblock interface.

Sun Sep 12 02:45:06 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* processheap.cpp: Simplified some code.

	* heapstats.h: Removed some outdated assertions.

Sat Sep 11 18:23:59 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* threadheap.cpp: Made the search for a block into a loop.

	* threadheap.cpp: Fixed lock loop.

	* superblock.cpp, superblock.h, threadheap.cpp, config.h, heap.cpp, heap.h, processheap.cpp:
	Made superblocks into a doubly-linked list (I had forgotten to remove superblocks when releasing them!).

	* config.h, superblock.h: Added some more meaningful comments.

Fri Sep 10 21:13:08 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* config.h, heapstats.h, processheap.h:
	A few changes needed by the IBM compiler.

	* config.h: More processors.

	* superblock.h: Fewer bytes.

	* heap.h: Added a spinlock.

Wed Sep  8 03:17:41 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* threadheap.cpp:
	'Big' objects are BIGGER than NUMBER_OF_BYTES, not the same size.

Tue Sep  7 17:59:05 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* wrapper.cpp, processheap.cpp, superblock.h, threadheap.cpp:
	Large objects now are unconditionally returned to heap 0.

	* processheap.h, threadheap.cpp, config.h, processheap.cpp:
	Turned off debugging, fixed erroneous extra decrement (oops).

	* heapstats.h, processheap.cpp, wrapper.cpp, config.h, heap.cpp:
	Cleaned up some foo; added a decStats -- looks like I'd forgotten it...

	* benchmarks/larson/driver_mt.C, heapstats.h: Routine check-in.

	* benchmarks/shbench/shbench1.cpp, benchmarks/larson/driver_mt.C, benchmarks/linux-scalability/linux-scalability.c, benchmarks/larson/ptmalloc.h, benchmarks/larson/thread-m.h, benchmarks/larson/driver_mt.c, benchmarks/larson/parallel.h, benchmarks/larson/perfcounters.h, benchmarks/larson/ptmalloc.c, benchmarks/larson/dlm.h:
	Initial check-in.

	* threadtest.cpp: Each worker now iterates 10 times.

	* threadheap.cpp, threadheap.h:
	Put getBlock code back into malloc (since it's never called by anyone else).

	* testmymalloc.cpp, config.h, superblock.cpp, superblock.h, block.h:
	Updated some comments.

Mon Sep  6 20:48:50 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* superblock.cpp:
	Removed cruft and excess memory consumption (left over from when we used non-blocking bags).

	* config.h: Removed some cruft.

	* benchmarks/shbench/shbench.cpp, wrapper.cpp, wrapper.h, threadtest.cpp, timer.h, testmymalloc.cpp, threadheap.cpp, threadheap.h, processheap.h, superblock.cpp, superblock.h, processheap.cpp, heap.cpp, heap.h, heapstats.h, config.h, README:
	Provably memory-efficient version with just one lock per heap. Fast and furious!

Mon Jun 28 17:41:03 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* benchmarks/shbench/timer.h, benchmarks/shbench/shbench.cpp:
	SHbench - from Microquill.

Sat Jun 26 18:19:10 1999  Emery Berger  <emery@bigsky.cs.utexas.edu>

	* heapstats.h, processheap.h, timer.h: Initial check-in.


	* heapstats.h, processheap.h, timer.h: Initial revision

	* config.h, heap.cpp, heap.h, processheap.cpp, superblock.cpp, superblock.h, testmymalloc.cpp, threadheap.cpp, threadheap.h, threadtest.cpp, wrapper.cpp, wrapper.h:
	Initial check-in.


	* config.h, heap.cpp, heap.h, processheap.cpp, superblock.cpp, superblock.h, testmymalloc.cpp, threadheap.cpp, threadheap.h, threadtest.cpp, wrapper.cpp, wrapper.h:
	Initial revision

