It is true that that kill -3 is not profiler and hence the theme of the article: you can find performance bottlenecks without using a real profiler. I would also agree with your second point that the most horrible bottleneck can be seen by looking at the code. But most bottlenecks are more subtle in that they don't impede anything at low throughput and can only be seen at high throughput. It may be difficult at design time to imagine how each thread will interact with one-another and where those bottlenecks will emerge. Code can be well-engineered but still not meet the performance requirements.
Comments
kocka replied ago:
kill -3 is not a profiler
in 99% of the cases, you can find the most horrible performance bottleneck just by taking a look at the code :-)
Nick Maiorano replied ago:
It is true that that kill -3 is not profiler and hence the theme of the article: you can find performance bottlenecks without using a real profiler. I would also agree with your second point that the most horrible bottleneck can be seen by looking at the code. But most bottlenecks are more subtle in that they don't impede anything at low throughput and can only be seen at high throughput. It may be difficult at design time to imagine how each thread will interact with one-another and where those bottlenecks will emerge. Code can be well-engineered but still not meet the performance requirements.
Voters For This Link (8)
Voters Against This Link (1)