People forget that C++ is just a tool , like a screwdriver or a hammer. A good carpenter knows when it's time to take a metallurgy class and resmelt his hammer, because its composition is not correct for being a hammer.
The Horror in the Standard Library
11–20 of 222 posts
Re: The Horror in the Standard Library
#12I myself ran across this same scenario many years ago with a similar amount of hair pulling and eventually concluding that the GNU libstdc++ allocator wasn't reusing memory properly. Unfortunately, I was never able to pare down the application to the point that I had a reproducible test case to report upstream. GLIBCPP_FORCE_NEW was the solution for the near term and since I was deploying on Solaris boxes I eventuall…
Re: The Horror in the Standard Library
#13People forget that C++ is just a tool , like a screwdriver or a hammer. A good carpenter knows when it's time to take a metallurgy class and resmelt his hammer, because its composition is not correct for being a hammer.
Re: The Horror in the Standard Library
#14People forget that C++ is just a tool , like a screwdriver or a hammer. A good carpenter knows when it's time to take a metallurgy class and resmelt his hammer, because its composition is not correct for being a hammer.
I am pretty sure there has never been a carpenter who resmelted his hammer.
Re: The Horror in the Standard Library
#15I always deploy C++ server on jemalloc. Been doing it for years and while there's been occasional hicks up when updating it has provided much more predictable performance.
Re: The Horror in the Standard Library
#16People forget that C++ is just a tool , like a screwdriver or a hammer. A good carpenter knows when it's time to take a metallurgy class and resmelt his hammer, because its composition is not correct for being a hammer.
I am pretty sure there has never been a carpenter who resmelted his hammer.
Re: The Horror in the Standard Library
#17Not identifying this until many hours after symptoms were impacting users sounds like a pretty big monitoring blind spot.
Re: The Horror in the Standard Library
#18Yeah malloc() is pretty terrible in glibc by modern standards. For some workloads it just can't keep up and ends up fragmenting space in such a way that memory can't be returned to the OS (and thus be used for the page cache) and you end up in this performance spiral. I always deploy C++ server on jemalloc. Been doing it for years and while there's been occasional hicks up when updating it has provided much more pred…
Re: The Horror in the Standard Library
#19Earlier quoted context omitted.
I am pretty sure there has never been a carpenter who resmelted his hammer.
I'm not sure "resmelting" is even a thing. I am sure that the GP is joking.
Re: The Horror in the Standard Library
#20Yeah malloc() is pretty terrible in glibc by modern standards. For some workloads it just can't keep up and ends up fragmenting space in such a way that memory can't be returned to the OS (and thus be used for the page cache) and you end up in this performance spiral. I always deploy C++ server on jemalloc. Been doing it for years and while there's been occasional hicks up when updating it has provided much more pred…