| ▲ | tripflag 6 hours ago | |||||||||||||||||||||||||||||||
it's a tradeoff; mallocng does have benefits as well -- for example it uses less than half the amount of RAM compared to mimalloc and glibc for certain Python workloads. While yes it is a bit slower, I prefer mallocng in many cases. | ||||||||||||||||||||||||||||||||
| ▲ | 3eb7988a1663 6 hours ago | parent | next [-] | |||||||||||||||||||||||||||||||
I imagine there is no free lunch in the allocator space, but a series of trade-offs. Pick your poison on implementation which is going to be sub-optimal for some subset of use cases. Without a hugely compelling reason to switch, going with the default is reasonable. | ||||||||||||||||||||||||||||||||
| ▲ | Orphis 6 hours ago | parent | prev [-] | |||||||||||||||||||||||||||||||
ripgrep is there to be FAST. Trading any speed to improve memory efficiency over a longer period of time for a process with a short life-time doesn't make sense in this case. It's also a development tool. If your development machine is having RAM issues because it's doing a grep, you have bigger problems to solve. As for other workloads that might use less RAM with mallocng compared to other performant ones, I'm curious to know about the magnitudes we're talking about. From 10MB to 20MB or from 100MB to 2GB? How was the speed of the program? Was there any multithreading involved? | ||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||