I have a Garmin Forerunner 10 GPS watch. It has been very accurate and reliable. I have checked it on my local track and in races, and the measured distances seem to be accurate.
However, in regard to the "Records" (or PRs) feature, the calculation seems odd. I had expected that, say, over a 15-mile run the watch would calculate my time from the start of the run. This does not seem to be the case. A couple of days ago, I ran 15.2 miles and the watch also noted a "record" for the half of 1:39:02. Yesterday, I happened to be going over my half time in order to find the VDOT score at Daniels, and saw that a 1:39:02 is a 7:33 pace. For my entire 15.2 miles, the watch gives a 7:35 pace. How could this be, as my last two miles were 7:33 and 7:08, and thus my pace could not have slowed in the final two miles (after the 13.1 PR time)? If anything, my overall pace should have gone down, not up.
Thus, does the watch measure a PR from some arbitrary point beyond the start? This would be disappointing.