Original Post
I'm in the process of doing some heavy optimization work on a project, and up until now I've been using a handful of profiling tools to guide the work - the standard hotspot detection and repair approach. However, I've now reached a point where performance is still not acceptable, but the profilers are turning up pretty much nothing in terms of code hotspots. The most expensive functions barely account for a percentage point of the overall running time, and even considering the parents of those functions in the call graph doesn't turn up anything major. Basically I'm at a point where the results given by profiling aren't going to lead to any significant speedups. Most of what I could tweak at this point would net maybe a 5-10% gain all told, whereas what I need to get performance into an acceptable range is more like a gain of 5-6x. So I'm curious - who has encountered situations like this, and what did you do? Are there any dirty tricks I can pull to help speed things up? Am I using my profilers to the best of their capabilities (i.e. is there something else I can do with them to help locate problem points)?