"Fossies" - the Fresh Open Source Software Archive

Member "heaplayers-351/allocators/hoard/NEWS" (28 Dec 2005, 6189 Bytes) of package /linux/misc/old/heaplayers_3_5_1.tar.gz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 
    2 	      The Hoard Multiprocessor Memory Allocator
    3 			<http://www.hoard.org>
    4 
    5 			 Version Information
    6 			 -------------------
    7 version 3.4.0:
    8 
    9         * Added support for X86-64, Apple OS-X,
   10           and Microsoft's Visual Studio 2005.
   11 
   12         * Fixed a rare leak for Windows due to surprising VirtualFree API
   13 	  (doesn't reclaim memory unless size argument is 0).
   14 
   15 	* Restored Detours version, but with thread-specific local heaps disabled.
   16 
   17 	* Removed all dependencies on STL.
   18 
   19 version 3.3.0:
   20 
   21         * Added thread-specific local heaps, which substantially
   22 	  improve performance by eliminating most atomic operations.
   23 
   24 version 3.2.3:
   25 
   26 	* Bug fix for Unix platforms, now allowing calls to
   27 	  pthread_create with a NULL attribute.
   28 
   29 	* Added support for ARM architectures.
   30 
   31 version 3.2.2:
   32 
   33 	* Reduces memory consumption for large objects (Windows).
   34 
   35 version 3.2.1:
   36 
   37 	* Maintenance release: fixes a bug for 64-bit versions
   38 	  and changes the Windows build (for winhoard) slightly.
   39 
   40 version 3.2:
   41 
   42 	* An improved Windows build (see NOTES.windows).
   43 	* An algorithmic change (essentially a variant of thread-local
   44 	  allocation buffers) that boosts performance by avoiding atomic
   45 	  operations.
   46 
   47 version 3.1:
   48 
   49 	* Several performance optimizations.
   50 	* A minor bug fix for non-Windows platforms.
   51 
   52 version 3:
   53 
   54 	* Switched over to Heap Layers-based implementation.
   55 	* Added single-threaded optimization (if no threads spawned, no locks).
   56 
   57 version 2.1.2:
   58 
   59 	* Made the code 64-bit clean.
   60 	* Fixed a bug in recycling free memory on uniprocessors.
   61 
   62 version 2.1.1:
   63 
   64 	* Added Debian distribution support.
   65 	* Fixed a Linux compilation bug in a benchmark.
   66         * Added automake-produced Makefiles for all benchmarks.
   67 	* Added pthread_atfork handlers to avoid deadlocks when
   68 	using fork().
   69 
   70 version 2.1.0:
   71 
   72 	* Now ships as a DLL for Windows.
   73 	* Reduced internal fragmentation for small objects.
   74 	* A variety of performance improvements.
   75 	* Patched to work on 64-bit Solaris.
   76 	* Removed BeOS support.
   77 	* Simplified user-level locking.
   78 	* Incorporated Doug Lea's malloc as a faster backing store
   79 	  than mmap(), for non-Windows execution.
   80 
   81 version 2.0.6:
   82 
   83 	* Fix to allow Hoard to work with MFC under Windows.
   84 
   85 version 2.0.5:
   86 
   87 	* Fix to work with the new Sun WorkShop compiler.
   88 
   89 version 2.0.4:
   90 
   91 	* Fix to allow Hoard to work with Debug builds under Windows.
   92 
   93 version 2.0.3:
   94 
   95 	* Added a fix for better fragmentation on uniprocessors,
   96 	added a "winprojects" directory for easier building on Windows
   97 	under Visual Studio, improved realloc performance, and fixed a bug
   98 	for out-of-memory conditions.
   99 
  100 version 2.0.2:
  101 
  102 	* Fixed a memory leak for SGI.
  103 
  104 version 2.0.1:
  105 
  106 	* Fixed compilation on AIX with xlC (IBM).
  107 
  108 version 2.0:
  109 
  110 	* Added very aggressive superblock recycling. Now an empty
  111 	superblock is immediately available for reuse for another size
  112 	class. This can dramatically reduce fragmentation.
  113 
  114 	* We now preferentially allocate from recently-touched
  115 	superblocks to improve page locality.
  116 
  117 	* Incorporated a protocol to guarantee swift superblock
  118 	'acquisition' by free().
  119 
  120 version 1.5.3: (not generally released)
  121 
  122 	* Miscellaneous bug fixes.
  123 
  124 version 1.5.2:
  125 
  126 	* Fixed a problem on some Linux systems that caused
  127 	many large allocations to fail.
  128 	* Fixed a call to VirtualFree which didn't actually
  129 	release memory back to the system.
  130 
  131 
  132 version 1.5.1:
  133 
  134 	* Changed initialization of the process heap to fix
  135 	a problem with Visual C++.
  136 
  137 version 1.5:
  138 
  139 	* Large blocks (> 4K) are now immediately returned to
  140 	the system when they are freed.
  141 
  142 	* Made a number of improvements to the algorithm that ensure
  143         O(1) cost for malloc & free and guarantee low contention for
  144 	free's. (These will be discussed in a paper currently in
  145 	progress.) Also added a method that further reduces the number
  146 	of system calls when allocating memory.
  147 
  148 	* Added superblock recycling to reduce fragmentation.
  149 
  150 	* Hoard now compiles with Sun's Workshop compilers (version 5.0)
  151 	on SPARCs. (Thanks to Ganesan Rajagopal of Novell for the
  152 	undocumented .il trick for inlining assembly.)
  153 
  154 	* Ported to AIX (IBM, PowerPC-based).
  155 
  156 version 1.4.2:
  157 
  158 	* A bug fix -- corrects a subtle problem with memalign.
  159 	Hoard now successfully passes Wolfram Gloger's
  160 	malloc-test (included with the distribution).
  161 
  162 version 1.4.1:
  163 
  164 	* A few fixes for backward compatibility with Solaris 2.6.
  165 
  166 version 1.4:
  167 
  168 	* Doubled the speed of calls to free().
  169 	* Further improved scalability, especially on Solaris.
  170 	* Reduced memory consumption and improved performance on
  171 	uniprocessors.
  172 	* Changed the lock implementation for Windows from spin to
  173 	spin-yield, as in the UNIX implementations (thanks to Paul
  174 	Larson of Microsoft Research for pointing out how to do this).
  175 	* Removed the shbench benchmark from the distribution, per
  176 	request from MicroQuill, Inc.
  177 
  178 version 1.3.3:
  179 
  180 	* Changed some casts of pointers to unsigned longs
  181 	to allow Hoard to work on 64-bit machines (read: SGI O2K).
  182 
  183 version 1.3.2:
  184 
  185 	* Minor modifications for the Windows NT port,
  186 	along with workspace and project files for Visual C++
  187 	(thanks to Arnd Bohm).
  188 
  189 version 1.3.1:
  190 
  191 	* Included a customized version of 'atexit' for Linux,
  192 	since the newest version of libc (2.1.2) caused Hoard to
  193 	deadlock (it called malloc internally).
  194 
  195 version 1.3:
  196 
  197 	* Ported to the BeOS (thanks to Trey Boudreau of Be).
  198 	* Replaced the per-sizeclass locks with per-heap locks,
  199 	since this has no impact on scalability and reduces Hoard's
  200 	static footprint.
  201 
  202 version 1.2:
  203 
  204 	* Dramatically improved performance with fast user-level locks
  205  	for SPARC, x86, and the SGI.
  206 	* Added sproc support (for the SGI).
  207 	* Hoard can now be built under Visual C++ (thanks to John
  208 	Hickin).
  209 
  210 version 1.1:
  211 
  212 	* Added autoconf and automake scripts to facilitate compilation
  213 	and installation (including shared libraries).
  214 	(thanks to Ganesan Rajagopal of Novell for submitting the scripts)
  215 
  216 version 1.0.3:
  217 
  218 	* Hoard now scales on OS's besides Linux and Solaris.
  219 	(the thread ID hash function was pathological for other OS's)
  220 
  221 version 1.0.2:
  222 
  223 	* Ported to Windows NT.
  224 	* Added in the benchmark suite (larson, linux-scalability, shbench).
  225 
  226 version 1.0.1:
  227 
  228 	* Fixed a build problem.
  229 
  230 version 1.0:
  231 
  232 	* Initial release.
  233