3 ms·
I’m surprised to see the attribution to the tools and not your proposed fixes. Sure the discovery was the first step in the order of operations, but can you ela
by dijonman2 4y ago
I’m surprised to see the attribution to the tools and not your proposed fixes. Sure the discovery was the first step in the order of operations, but can you elaborate on what enabled you to understand the problem statement and subsequent resolution?
There has to be a deeper understanding I think
- azurezyq 4y agoI can share mine. It's an ads retrieval system. Latency is very sensitive and it has to be efficient. To avoid mem allocations, special hashtables with fixed number of buckets (also open addressing) are used in multiple places in query processing. Default is 1000. However, there are cases that number of elements are only a handful. Then in this case, it fails to utilize the cache, hence slower. The solution is to tune number of buckets from info derived from the pprof callgraph. There were others too, like redundant serialization, etc. But this one is the most interesting.
- zasdffaa 4y agoThat's surprising. If I was writing this I'd have instrumented the code for the buckets to (optionally) log the use, and probably add an alert. (being an armchair expert is easy though)
- alexott 4y agoI also heavily used callgrind/cachegrind to tune critical paths in our high performance web proxy, we’re each micro/milliseconds counts… For example, in media type detection that is called multiple times per request (minimum twice for request/response), etc.
- imetatroll 4y agoSounds like the solution probably had something to do with switching to passing by reference + other changes I would assume.
- intelVISA 4y agoA big pain point for using coroutines is having to pass-by-value more frequently due to uncertain lifetimes.. it's jarring when you come from zero copy programming.
- cbrogrammer 4y agoThat is what many people fail to understand as to why us C programmers dislike C++
- pjmlp 4y agoIndeed, because languages with reference parameters preceed C for about 15 years, and are present in most ALGOL derived dialects.