- Update to version 4.1.0

New features:
  * Implement decay-based unused dirty page purging, a major optimization
    with mallctl API impact. This is an alternative to the existing ratio-based
    unused dirty page purging, and is intended to eventually become the sole 
    purging mechanism. New mallctls:
    + opt.purge
    + opt.decay_time
    + arena.<i>.decay
    + arena.<i>.decay_time
    + arenas.decay_time
    + stats.arenas.<i>.decay_time
  * Add --with-malloc-conf, which makes it possible to embed a default options
    string during configuration. This was motivated by the desire to specify 
    --with-malloc-conf=purge:decay , since the default must remain purge:ratio
    until the 5.0.0 release.
  * Make *allocx() size class overflow behavior defined. The maximum size
    class is now less thanPTRDIFF_MAX to protect applications against numerical
    overflow, and all allocation functions are guaranteed to indicate errors 
    rather than potentially crashing if the request size exceeds the maximum size class.
  * jeprof:
    + Add raw heap profile support.
    + Add --retain and --exclude for backtrace symbol filtering.
  Optimizations:
  * Optimize the fast path to combine various bootstrapping and configuration
    checks and execute more streamlined code in the common case.
  * Use linear scan for small bitmaps (used for small object tracking). 
   In addition to speeding up bitmap operations on 64-bit systems, this reduces
   allocator metadata overhead by approximately 0.2%.
  * Separate arena_avail trees, which substantially speeds up run tree operations.

OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/jemalloc?expand=0&rev=33
This commit is contained in:
Ismail Dönmez 2016-02-29 08:35:57 +00:00 committed by Git OBS Bridge
parent 314fca573a
commit f065ff23ad
4 changed files with 63 additions and 4 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3fda8d8d7fcd041aa0bebbecd45c46b28873cf37bd36c56bf44961b36d0f42d0
size 391483

3
jemalloc-4.1.0.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fad06d714f72adb4265783bc169c6d98eeb032d57ba02d87d1dcb4a2d933ec8e
size 412900

View File

@ -1,3 +1,62 @@
-------------------------------------------------------------------
Mon Feb 29 08:27:44 UTC 2016 - idonmez@suse.com
- Update to version 4.1.0
New features:
* Implement decay-based unused dirty page purging, a major optimization
with mallctl API impact. This is an alternative to the existing ratio-based
unused dirty page purging, and is intended to eventually become the sole
purging mechanism. New mallctls:
+ opt.purge
+ opt.decay_time
+ arena.<i>.decay
+ arena.<i>.decay_time
+ arenas.decay_time
+ stats.arenas.<i>.decay_time
* Add --with-malloc-conf, which makes it possible to embed a default options
string during configuration. This was motivated by the desire to specify
--with-malloc-conf=purge:decay , since the default must remain purge:ratio
until the 5.0.0 release.
* Make *allocx() size class overflow behavior defined. The maximum size
class is now less thanPTRDIFF_MAX to protect applications against numerical
overflow, and all allocation functions are guaranteed to indicate errors
rather than potentially crashing if the request size exceeds the maximum size class.
* jeprof:
+ Add raw heap profile support.
+ Add --retain and --exclude for backtrace symbol filtering.
Optimizations:
* Optimize the fast path to combine various bootstrapping and configuration
checks and execute more streamlined code in the common case.
* Use linear scan for small bitmaps (used for small object tracking).
In addition to speeding up bitmap operations on 64-bit systems, this reduces
allocator metadata overhead by approximately 0.2%.
* Separate arena_avail trees, which substantially speeds up run tree operations.
* Use memoization (boot-time-computed table) for run quantization. Separate
arena_avail trees reduced the importance of this optimization.
* Attempt mmap-based in-place huge reallocation. This can dramatically speed up
incremental huge reallocation.
Incompatible changes:
* Make opt.narenas unsigned rather than size_t.
Bug fixes:
* Fix stats.cactive accounting regression.
* Handle unaligned keys in hash(). This caused problems for some ARM systems.
* Refactor arenas array. In addition to fixing a fork-related deadlock,
this makes arena lookups faster and simpler.
* Move retained memory allocation out of the default chunk allocation function,
to a location that gets executed even if the application installs a custom chunk
allocation function. This resolves a virtual memory leak.
* Fix a potential tsd cleanup leak.
* Fix run quantization. In practice this bug had no impact unless applications
requested memory with alignment exceeding one page.
* Fix LinuxThreads-specific bootstrapping deadlock. (Cosmin Paraschiv)
* jeprof:
+ Don't discard curl options if timeout is not defined. (@djwatson)
+ Detect failed profile fetches. (@djwatson)
* Fix stats.arenas.<i>.{dss,lg_dirty_mult,decay_time,pactive,pdirty} for --disable-stats case.
-------------------------------------------------------------------
Sun Feb 14 18:27:08 UTC 2016 - olaf@aepfle.de

View File

@ -17,7 +17,7 @@
Name: jemalloc
Version: 4.0.4
Version: 4.1.0
Release: 0
%define lname libjemalloc2
Summary: General-purpose scalable concurrent malloc implementation