Closed
Bug 418510
Opened 17 years ago
Closed 17 years ago
MALLOC_BITMAP alternative and MALLOC_SEATBELTS
Categories
(Core :: Memory Allocator, enhancement)
Tracking
()
RESOLVED
WONTFIX
People
(Reporter: jasone, Assigned: jasone)
Details
Attachments
(1 file)
13.95 KB,
patch
|
Details | Diff | Splinter Review |
The attached patch implements two features (both disabled by default) for jemalloc. These features were requested by Stuart Parmenter in the context of performance and stability for OS X.
MALLOC_BITMAP alternative: By default, jemalloc tracks unused small regions via bitmaps. If MALLOC_BITMAP is undefined, then unused small objects are instead chained together using singly linked lists. The non-bitmap code is much simpler, but my benchmarking efforts indicate that there is little performance difference. Also note that the bitmaps are less vulnerable to corruption by misbehaved code (writing to an object after deallocating it).
MALLOC_SEATBELTS: Instead of crashing at the first hint of trouble when querying data structures during free() and malloc_usable_size(), try to detect problems and continue without crashing. Note that the diagnostic output will cause deadlock if malloc_printf() causes allocation (platform-specific).
Attachment #304336 -
Flags: review?(pavlov)
Updated•17 years ago
|
Summary: MALLOC_BITMAP alternative, MALLOC_SEATBELTS → MALLOC_BITMAP alternative and MALLOC_SEATBELTS
Updated•17 years ago
|
Assignee: jasone → nobody
Status: ASSIGNED → NEW
Product: Firefox → Core
QA Contact: general → general
Updated•17 years ago
|
Assignee: nobody → jasone
Comment 1•17 years ago
|
||
after talking with jason I don't think we want to take the bitmap stuff. It was a good test but didn't seem to make any big difference.
We may want to take the seatbelt stuff for people running on the mac though.
Comment 2•17 years ago
|
||
Stuart - based on bug 420678 should we take the seatbelt code?
Flags: blocking1.9?
Minusing based on stuart's comments here -- though you guys should probably talk and figure out if that's correct or not?
Flags: blocking1.9? → blocking1.9-
Assignee | ||
Comment 4•17 years ago
|
||
Stuart and I chatted about this, and we came to the conclusion that the seatbelt code doesn't go far enough for the purposes of catching the mixed-allocator bugs like in bug 420678.
Assignee | ||
Updated•17 years ago
|
Assignee: jasone → nobody
Component: General → jemalloc
QA Contact: general → jemalloc
Assignee | ||
Updated•17 years ago
|
Assignee: nobody → jasone
Assignee | ||
Comment 5•17 years ago
|
||
These features will not be incorporated, since they do not adequately solve an existing need.
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → WONTFIX
Updated•17 years ago
|
Attachment #304336 -
Flags: review?(pavlov)
You need to log in
before you can comment on or make changes to this bug.
Description
•