jemalloc on trunk — linux edition

Back on the 12th of February we turned jemalloc on in our Linux builds.  Sorry for not posting sooner!  We saw a good performance increase and a drop in memory.  Neither were as large as the wins we saw on Windows but still good.  I tried tuning the glibc allocator a bit but was mostly unsuccessful at making it both faster and use less memory at the same time.  Also over time the fragmentation results just weren’t quite what we were hoping for.

Things in the memory world are looking pretty great.  Our work seemed to have paid off.  There is always more to do but Firefox 3 beta 4 will be great.

8 thoughts on “jemalloc on trunk — linux edition

  1. Matt Doran

    Cool! Sorry to keep asking when you’re obviously very busy…. do you have any numbers on overall perf, memory, fragmentation improvements that jemalloc has provided. Even a rough ballpark?

    Reply
  2. pavlov Post author

    Its a pretty wide range. We got a 5-10% speed win on things like our page load tests. On Windows we see 20%-40% memory savings after running for a long time. We made realloc a lot faster on Windows so tests that do string concats got up to 70x faster 🙂

    I’ll try to post a full breakdown of the numbers on various tests in the not-too-distant-future.

    Reply
  3. Ferdinand

    This is really great. It’s the first time I can open hundreds of tabs in Firefox with JavaScript, flash, images and plugins without it slowing down Firefox and it keeps the memory level very reasonable. 175MB right now with 43 tabs(with Digg and Google Reader being the ‘fattest’).
    It even seems that Firefox uses less memory and cpu than Opera 9.5 Beta. The only thing that makes Opera feel faster now is the GUI which never freezes or stutters.

    Really, thank you for all your hard work

    Reply
  4. Bastiaan

    I wonder what effect this would have on the soon to be released FreeBSD 7.0, which will have jemalloc as its native allocator.

    Reply
  5. pavlov Post author

    Bastiaan: As best I understand it, our version is a bit newer than the one on the FreeBSD 7.0 but things should still be pretty good there.

    Reply
  6. Justin

    Kudos on the good work my FF has been a lot more manageable since the latest release. I would however like some more info on the jemalloc function a bit of googling has pretty much linked me back to this post.

    Reply
  7. Ionut

    Does jemalloc have a dedicated web page please?
    It’s sounds very usefull and I wanna know more about it.
    Starting with the license and everything.
    Thank you very much!

    Reply

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s