If you have rollout in quite periods it is ok and always ok? but when it is busy it is always a problem and always a problem when it is. Or is it that you can depoly in a quite periods abut when it gets busy it is a problem?
TBH you should be doing release deployments at off peak hours anyway, if possible. And major releases should be properly tested (stress tested) anyway. Have you tested this release on your test/staging/QA servers?
I would work out what worker process w3wp.exe is the taking up the most CPU and link this to the you app pools.
Use iisapp to help you work out what apps are linked to which worker process.
http://weblogs.asp.net/owscott/archive/2004/09/21/Which-w3wp.exe-process-belongs-to-which-App-Pool-in-IIS6.aspx
Restructure your server and applications to make isolate the problem.
Use IIS logs to work out what pages are taking up the CPU. If nothing is in the IIS logs then nothing is getting to IIS. Look at the long running 'timetaken' pages. This will indicate what pages you need to look at in detail to troubleshoot. You first need to narrow down what pages are problem - if any.
Also what do the clients see?
Does a simple hello world html or .net page have the same problems?
For I am still looking at app problems - previously the server was ok before and the deployments were ok. Now this depolyment is causing a problem. So something has changed either your server has changed, your network config has changed or your app has changed. Now we know the app has changed.
I am still a little confused what you mean by IIS recompile. Maybe the terminology is getting confused. Maybe this from a dev point of view will explain:
http://forums.asp.net/p/1353153/2768560.aspx