There are a lot of reasons that you can be seeing w3wp.exe high CPU usage.
I have selected six common causes to cover.
- High error rates within your ASP.NET web application
- Increase in web traffic causing high CPU
- Problems with application dependencies
- Garbage collection
- Requests getting blocked or hung somewhere in the ASP.NET pipeline
- Inefficient .NET code that needs to be optimized