My laptop’s clock seems to get out of sync and fall behind quite often. I suspect it’s because the clock frequency keeps changing thanks to the power-saving SpeedStep stuff. However, it’s irritating that my clock is always wrong–especially when Windows XP has a built-in NTP client! Of course, the default is to poll once a week (!) … and the “Date and Time Properties” dialog doesn’t allow you to configure how often to poll.
Luckily, it is configurable through manual modification of a Windows registry value. It’s in the registry hive, here:
The value is SpecialPollInterval which is a DWORD number of seconds that is set to 604800 (one week) by default. I’ve ratcheted it down to 3600 (one hour) to minimize the drift of my clock but not putting undue stress on my local NTP server.
Once you’ve made the change, you’ll need to restart the Windows Time service in order for it to pick up the new interval. From a Command Prompt:
C:...> net stop "Windows Time"
The Windows Time service is stopping.
The Windows Time service was stopped successfully.
C:...> net start "Windows Time"
The Windows Time service is starting.
The Windows Time service was started successfully.
That’s it. You’ll want to click the “Update Now” button in the “Internet Time” tab under “Date and Time Properties” to force a NTP sync. and update the “Next synchronization:” date with your new poll interval.
I hope this tidbit is useful to anyone else looking to adjust the polling frequency of their Windows NTP client. I know this has certainly bothered me for a long time before I finally figured it out.
Update 2018-07-10: Some time between 2007 and 2018, Microsoft published and made publicly available documentation on the Windows Time Service, for anyone who’s looking for it.