Comments (7)
Ah, thank you for your advice! I tried mimalloc, and it is indeed slightly better than jemalloc. mold runs a few percent faster with mimalloc.
I wanted to give tcmalloc a shot, but it looks like it can't be built with make or cmake, so I'll leave it alone for now.
from mold.
@marxin Please build mold with make USE_MIMALLOC=0
from mold.
The gperftools version of tcmalloc builds with cmake. https://github.com/gperftools/gperftools
from mold.
Ah, thank you for your advice! I tried mimalloc, and it is indeed slightly better than jemalloc. mold runs a few percent faster with mimalloc.
I wanted to give tcmalloc a shot, but it looks like it can't be built with make or cmake, so I'll leave it alone for now.
As @pepsiman mentioned above, you can build TCMalloc with cmake from the gperftools repository. However, if Microsoft's benchmarks (as well as my preliminary benchmarks) are anything to go by then mimalloc should outperform TCMalloc.
I'm sure you'll compare them both to be sure anyways, and hopefully mold will end up even faster (it's already pretty darn fast).
from mold.
I tried tcmalloc, and it looks like tcmalloc is the slowest among tcmalloc, tbbmalloc, jemalloc and mimalloc. Here is the chromium link time:
mimalloc: 1.83s
jemalloc: 1.89s
tbbmalloc: 1.96s
tcmalloc: 2.13s
glibc malloc: 3.10s
It is very interesting to see that swapping malloc makes such a huge performance difference.
from mold.
I tried tcmalloc, and it looks like tcmalloc is the slowest among tcmalloc, tbbmalloc, jemalloc and mimalloc. Here is the chromium link time:
mimalloc: 1.83s
jemalloc: 1.89s
tbbmalloc: 1.96s
tcmalloc: 2.13s
glibc malloc: 3.10sIt is very interesting to see that swapping malloc makes such a huge performance difference.
It is also interesting to see TCMalloc lag behind so much, as Google's claims seemed to suggest it would be at least equivalent to jemalloc - if not faster. However, it's good to see mimalloc live up to Microsoft's claims. Thanks for testing them all.
from mold.
Btw. is there any configure option to disable mimalloc and use the default glibc?
from mold.
Related Issues (20)
- Very slow symbol lookup speed with gdb HOT 3
- mold fails to build on Debian sid on most of the archs (`error: implicit declaration of function`)
- mold does not accelerate the compile process compare to normal config HOT 15
- Support `libdep` plugin HOT 8
- duplicate symbol of compiler_rt builtin functions HOT 16
- Reference counting of std::shared_ptr is non-atomic when using the mold linker HOT 5
- mold can't be built with itself on mingw HOT 2
- Higher zstd compression levels for debug info HOT 1
- 2 tests fail on RiscV HOT 6
- Compilation on EL-family Linux with GCC leaves `ld.mold` zombies. HOT 2
- Mold 2.32.1 fails to link with unresolved dlopen HOT 1
- Proposal: split debug symbols HOT 4
- Symbol table is empty in `.gdb_index` created by mold HOT 4
- [regession] cannot use lto on MacOS: get_self_path is not supported HOT 1
- aarch64-lto-llvm fails with llvm 18
- Mold crash in mold::elf::InputSection<mold::elf::X86_64>::get_fragment at mold/elf/mold.h:2363 HOT 9
- test arm-arm_abs-error fails on linux armel
- sparc64: a bunch of tests are failing HOT 25
- x32: most of the tests are failing HOT 1
- question about support relaxation of loongarch HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mold.