I haven't done any hard core testing, but I have seen a trend at about 60% completion or a little earlier, regardless of drive size. It slows way down when it hits 60% and I find if I stop the defrag, reanalyze, and start again, it flies.
Now I am seeing on larger drives (not necessarily more space taken up), a 2nd stop and reanalyze seems to be needed. I just noticed this, and I can't really confirm yet.
EDIT--> All are XP SP2 machines. Various flavors of HDD sizes, brands. Various flavors of Core Duo's.