« April 2010 | May 2010 Archives | July 2010 »

More performance testing

I'm continuing to help my performance obsessed client squeeze more out of his server. As always we've been using perfmon to view the server's performance counters and since we were investigating CPU spikes we were interested in the thread activity counters that the server exposed. The various perfmon enabled example servers that ship with The Server Framework have always exposed counters that show the number of active and processing threads from various thread pools. It's always been useful to see these snapshots of thread activity and with many servers these counters are enough to tune the server to the hardware. This time…
Whilst profiling my new low contention buffer allocator in a 'real world' situation recently I spent quite a lot of time trying to work out what I was looking for and when it should happen. Since the allocator improves performance by reducing lock contention it only shines when there IS lock contention. I added some more monitoring to the existing buffer allocator so that it can give an indication of when it's going to block during an allocation or release operation (by using TryEnterCriticalSection() followed by a monitoring notification and then an EnterCriticalSection() when the try has failed). This gave…
As I mentioned yesterday, I've been doing some performance testing using the command line interface to perfmon to record the results. Today I automated the stuff I was playing with over the weekend and ended up with a script that can set up a perf log trace, install a particular build of a service, run a test from a remote client machine (using winrs) and then stop and remove the perf log and the service. Another script then calls the first script and tells it which versions of the code to test. Once all of the code has been tested…
« April 2010 | May 2010 Archives | July 2010 »

About this Archive

This page is an archive of entries from May 2010 listed from newest to oldest.

April 2010 is the previous archive.

July 2010 is the next archive.

I usually write about C++ development on Windows platforms, but I often ramble on about other less technical stuff...

Find recent content on the main index or look in the archives to find all content.

I have other blogs...

Subscribe to feed The Server Framework - high performance server development
Subscribe to feed Lock Explorer - deadlock detection and multi-threaded performance tools
Subscribe to feed l'Hexapod - embedded electronics and robotics