I am used to using profilers for software development. I have had multiple windows pcs which all have slowed down over time, as well as had work PCs become slower. I understand this is probably the fault of programs that are installed, but I have no way of identifying the culprits. Is there a profiler or similar tool one can use to determine cause of slow windows performance? Note I am not asking about "tips" like "install more memory", but about actual tools for identifying specific causes of problems. Startup time is less important to me than being able to have a program run, close, respond, execute commands, and being able to switch programs in a timely manner.
I like sysinternals Process Monitor to see everything going on, registry read/write, file read/write. It can take some filtering to remove the noise, but may give you something to chase down.