System time/clock incredibly fast



  • Right, here's the problem. pfSense's system time or clock seems to be running at the speed of sound. Currently, it's 10:59 and the clock in system information says 11:13. (I have it sync using ntpdate every 5 minutes to keep it somewhat on track.)

    From what I've been able to gather it seems to depend on system load. If I don't do anything that uses up too many resources it only seems to gain 1-2 seconds every minute. However, if I start up a torrent application and start downloading something, it shoots off and thinks 10-15 seconds have gone by even if it's only been 1.
    (11:02 now, system information displays 11:27)

    The router system setup is as follows:
    pfSense 8.1-RELEASE-p6 FreeBSD 8.1-RELEASE-p6
    CPU: AMD A4-3400 APU with Radeon™ HD Graphics
    Mobo: ASRock A75M-HVS mATX

    I've tried setting kern.timecounter.hardware=HPET as well as TSC to no avail. I've tried disabling AMD Cool'n Quiet. I read in a post somewhere that disabling ACPI fixed it for that person. For me, that made pfSense fail to boot.

    Ran ntpdate manually:
    29 Jun 11:05:01 ntpdate[25278]: step time server 178.78.255.254 offset -2456.102173 sec

    I'm all out of ideas. What shall I do, oh gurus of computer wisdom?


  • Rebel Alliance Developer Netgate

    What's this look like (from a shell prompt):

    kern.timecounter

    kern.hz

    Could be that switching timecounters might be better, it may be automatically selecting an inaccurate one.



  • @jimp:

    What's this look like (from a shell prompt):

    kern.timecounter

    kern.hz

    Could be that switching timecounters might be better, it may be automatically selecting an inaccurate one.

    Sorry, I'm not sure how to enter that into the command prompt. Typing it in via ssh and the 8) Shell menu option results in command not found.



  • He was looking for the output of:
    sysctl kern.timecounter
    and
    sysctl kern.hz



  • Aha, thanks!

    Here's the output:

    sysctl kern.timecounter

    sysctl kern.timecounter
    kern.timecounter.tick: 1
    kern.timecounter.choice: TSC(-100) HPET(900) ACPI-fast(1000) i8254(0) dummy(-1000000)
    kern.timecounter.hardware: ACPI-fast
    kern.timecounter.stepwarnings: 0
    kern.timecounter.tc.i8254.mask: 65535
    kern.timecounter.tc.i8254.counter: 4775
    kern.timecounter.tc.i8254.frequency: 1193182
    kern.timecounter.tc.i8254.quality: 0
    kern.timecounter.tc.ACPI-fast.mask: 4294967295
    kern.timecounter.tc.ACPI-fast.counter: 976318787
    kern.timecounter.tc.ACPI-fast.frequency: 3579545
    kern.timecounter.tc.ACPI-fast.quality: 1000
    kern.timecounter.tc.HPET.mask: 4294967295
    kern.timecounter.tc.HPET.counter: 3457380201
    kern.timecounter.tc.HPET.frequency: 14318180
    kern.timecounter.tc.HPET.quality: 900
    kern.timecounter.tc.TSC.mask: 4294967295
    kern.timecounter.tc.TSC.counter: 1185842065
    kern.timecounter.tc.TSC.frequency: 2695108768
    kern.timecounter.tc.TSC.quality: -100
    kern.timecounter.smp_tsc: 0
    kern.timecounter.invariant_tsc: 1
    
    

    sysctl kern.hz

    kern.hz: 1000
    

    Edit: I've now tried setting kern.timecounter.hardware to HPET, TSC, i8254, and ACPI-fast manually and rebooting after each (in /etc/sysctl.conf). None of the settings have been any better than the other. The instant I use something that takes a lot of bandwidth (I have a 100/10 connection) the clock goes shooting off into hyperspeed.


Locked