When you use SQL Server profiler
What’s difference between Duration and CPU?
I know by default both were shown as in MilliSeconds and CPU is amount of CPU time it took to run the query while duration is more like amount of time it took query to return any data.
Based on my understanding if there is any blocking etc. your CPU time could be less but duration could be higher.
Can anyone proivde more insight? Scramble through the BOL but hard to find subtle differences.
Duration can include wait time, I/O, data transfer time, etc. CPU is just the time the CPU spent. If your query is CPU-bound, it will be a lot closer than if it is I/O- or memory-bound.