HI,
We've bean also having similar problems (CPU 100%). Mostly it was due to 2 possible reasons (if we can eliminate the server as an issue?!?!)
What is important about these things is that they all still cause problems after improving the performance(well actually execution time) with some standard things (like compression, moving viewstate to the server, improving caching).
So guys you have some real problems:
1. Schedule problems
Poorly progammed scheduled jobs. One good example of this is the FileSyncronization Schedule, if you have allot of files it will very likely spike your server to 100%. I've described this problem already on this thread
2. Module problems
Some of the modules are bult well, some are not.... also some are configured well, some are not.... to be more concrete, we turned on module caching for DnnBB forum, and with public pages it would just get *stuck* and loop into something until the timeout would brake.
When viewing the application internals with WindowsDebugger at time when the cpu was at 100% I either found only run-away threads with scheduler or DnnBB executing allot of repetative statements. For DnnBB I got the same result when viewing the SQL database with SQL Profiler.
My imediate cure for the problem was:
1. Turn off file syncronization (it ran every hour, for 40 minutues each time - spiked the server, we had about 10000 files on that host, more info on the mentioned thread above)
2. Turn of module caching for DnnBB (now the forum runs ok)
I'm not sure that these are all of our problems, but with this we solved most of them, and the server is breathing allot easier now!
hope this helps a bit