Checkpointing is now throttled in SQL 2005
During the iinterview with the SQLOS team this morning
Slava mentioned that as part of the new design for
the SQLOS the checkpoint process is much tightly controlled. If the checkpoint
process has issues pages to be written and the latency has become too high (20ms
was mentioned) then it will stop issuing pages.
Someone mentioned similar recently. In old versions of SQL (6.5) you looked
at the disk queue length to identify a performance issue, however in newer
releases the server manages the queue so that it doesn't get high, whats the
point of putting IO requests in when they aren't being serviced.
Also mentioned yesterday was the aspect of read aheads. The engine will
perform read aheads to satisfy what it thinks is going to be read, it doesn't
need the read ahead to be performed immediately it just needs it to have
completed by the time the engine needs to process it.
I will be trying to get some more details on this over the next few
days.
-