Real World Computing
.NET performance
The .NET CLR JIT performance object shows how much JIT work is being carried out, both globally and on a per-application basis, which can suggest opportunities for applying NGEN.
.NET CLR Remoting shows how much remote activity is being performed, which might indicate opportunities to relocate some of your systems, putting the called system as close to its caller as possible and removing as much communication latency as possible.
The .NET CLR Memory performance object helps you see how .NET and your applications are using memory. In particular, this counter reveals the impact of garbage collection, which is an important enough performance issue to require a column to itself.
In this column, I've looked at the basics of .NET performance and some of the many ways you can optimise it. We've looked at native code generation and how you can speed up loading of types by using the ngen.exe utility; at caching and how it can improve performance; and finally at some of the new .NET performance counters you can use to instrument and profile your application. In next month's column, I plan to look at garbage collection in more detail, including what it's for, how it works and the impact it can have on performance. I'll also be introducing a profiling tool you can use to see the impact of garbage collection and also possibly to tune your own applications. If you have any comments on this column or suggestions for future columns, please email me at Thomas.lee@ qa.com, and visit my web log at http://tfl09.blogspot.com





