Comment by chubot

Comment by chubot 5 days ago

8 replies

Nice post -- so does Facebook no longer use jemalloc at all? Or is it maintenance mode?

Or I wonder if they could simply use tcmalloc or another allocator these days?

Facebook infrastructure engineering reduced investment in core technology, instead emphasizing return on investment.

Svetlitski 5 days ago

As of when I left Meta nearly two years ago (although I would be absolutely shocked if this isn’t still the case) Jemalloc is the allocator, and is statically linked into every single binary running at the company.

> Or I wonder if they could simply use tcmalloc or another allocator these days?

Jemalloc is very deeply integrated there, so this is a lot harder than it sounds. From the telemetry being plumbed through in Strobelight, to applications using every highly Jemalloc-specific extension under the sun (e.g. manually created arenas with custom extent hooks), to the convergent evolution of applications being written in ways such that they perform optimally with respect to Jemalloc’s exact behavior.

charcircuit 5 days ago

Meta has a fork that they still are working on, where development is continuing.

https://github.com/facebook/jemalloc

  • nh2 4 days ago

    The point of the blog post is that repo is over-focused on Facebook's needs instead of "general utility":

    > as a result of recent changes within Meta we no longer have anyone shepherding long-term jemalloc development with an eye toward general utility

    > we reached a sad end for jemalloc in the hands of Facebook/Meta

    > Meta’s needs stopped aligning well with those of external uses some time ago, and they are better off doing their own thing.

    • nh2 4 days ago

      But I'd like to know exactly what that means.

      How can I find out if Facebook's focus is aligned with my own needs?

      • ahartmetz 4 days ago

        Now: Benchmarks :) Long term: you can look at the past and guess

  • burnt-resistor 4 days ago

    They take everything FLOSS and ruin it with bureaucracy, churn, breakage, and inconsideration to external use. They may claim FOSS broadly but it's mostly FOSS-washed, unusable garbage except for a few popular things.

    • umanwizard 4 days ago

      React, PyTorch, and RocksDB are all extremely significant. Not to mention them being one of the biggest contributors to the Linux kernel.

anonymoushn 4 days ago

The big recent change is that jemalloc no longer has any of its previous long-term maintainers. But it is receiving more attention from Facebook than it has in a long time, and I am somewhat optimistic that after some recent drama where some of that attention was aimed in a counterproductive direction that the company can aim the rest of it in directions that Qi and Jason would agree with, and that are well aligned with the needs of external users.