Closed
Bug 68673
Opened 24 years ago
Closed 22 years ago
mac memory allocators need rewrite to be carbon-compliant
Categories
(SeaMonkey :: General, defect, P2)
Tracking
(Not tracked)
RESOLVED
WONTFIX
mozilla1.0.1
People
(Reporter: Brade, Assigned: ccarlen)
References
Details
(Keywords: helpwanted, qawanted)
Not sure who to assign this to or if there is a bug already covering this specific issue. Somebody should grab it. Please cc others who should know about this bug. From Simon's message: ... because our classic allocators use some heap zone stuff to subdivide temp mem handles into zones, they don't work under Carbon. So the carbon build was switched to use MSL allocators, which never go to temp mem. So running carbon on 9 means you'll eventually run out of memory. I think we'll have to change the carbon build to use our allocators, but fix the to be carbon-compliant. That's doable, but means work.
Reporter | ||
Updated•24 years ago
|
Keywords: helpwanted,
nsmac1
Assignee | ||
Comment 1•24 years ago
|
||
What's the relative performance between our own allocator and MSL's? If theirs is as fast (or faster) we should just use theirs. I imagine it would be really simple to tweak its raw memory allocator to go to temp mem after some point.
Comment 2•24 years ago
|
||
i think ours would be faster since it's tuned for different sized blocks, and i'm pretty sure the MSL allocators aren't.
Comment 3•24 years ago
|
||
The problem with MSL's allocators is they don't go to temp mem, so we end up running out of memory rather quickly.
Assignee: nobody → sfraser
Assignee | ||
Comment 4•24 years ago
|
||
I'm not saying we use them as-is. We would need to make a slight mod to them to make them go to temp memory as well. Any memory allocator I've seen always has a place where it allocates raw blocks from the OS and we could just modify that.
Comment 5•24 years ago
|
||
Conrad: we must try to avoid MSL mods; folks have to be able to build with an out-of-the-box CodeWarrior.
Assignee | ||
Comment 6•24 years ago
|
||
But don't we build our own whole StdCLibs right now? With most src from CW and then some of our own mixed in. I'm not suggesting we modify MSL files in place but do what we do now - have copies of the project in our tree which build mostly from src in CW.
Comment 8•24 years ago
|
||
Wanna try doug lea's allocator? kandrot checked it in to the source tree...
Comment 11•23 years ago
|
||
if we stick with a two-product strategy, this bug can go away as it isn't an issue on OSX.
Comment 12•23 years ago
|
||
But what if an embedder wants Carbon builds to run under Mac OS 9?
Status: NEW → ASSIGNED
Assignee | ||
Comment 13•23 years ago
|
||
With CW7, we may be able to ditch our own memory allocator. The implementation that comes with CW7 is based on a Knuth algorithm and uses fixed size allocators for small blocks. It claims to perform 50% better than the allocators with previous versions of CW. Its performance, relative to our own allocator, could be compared pretty easily. Another advantage of their allocator is that the OS allocation primitives used to allocate pools are factored out into just two functions in a separate file. We can just provide implementations of those two functions which, under OS 9, use temp memory and, under OS X, just call NewPtr/DisposePtr. We don't have to modify CW files at all because of how they've factored it.
Comment 14•23 years ago
|
||
Bugs targeted at mozilla1.0 without the mozilla1.0 keyword moved to mozilla1.0.1 (you can query for this string to delete spam or retrieve the list of bugs I've moved)
Target Milestone: mozilla1.0 → mozilla1.0.1
Comment 16•22 years ago
|
||
Sorry for the spam. Fizzilla CFM build is dead; should this bug go with it?
Keywords: qawanted
Comment 17•22 years ago
|
||
Thanks for the reminder Frankie. Feel free to comment on any more CFM parrots you find that don't have toe tags :-) (With apologies to Monty Python)
Status: NEW → RESOLVED
Closed: 22 years ago
Resolution: --- → WONTFIX
Updated•20 years ago
|
Product: Browser → Seamonkey
You need to log in
before you can comment on or make changes to this bug.
Description
•