Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 09 Jan 2020 22:18:09 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 243233] Coffee lake frequency scaling
Message-ID:  <bug-243233-227@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D243233

            Bug ID: 243233
           Summary: Coffee lake frequency scaling
           Product: Base System
           Version: 12.1-RELEASE
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: bugs@FreeBSD.org
          Reporter: dennis.noordsij@alumni.helsinki.fi

I have a workload where I benefit from single core speed, so I got a system
with an i9-9900K (not overclocked) 8C CPU that should go up to 5GHz single =
core
speed. (I know it's not server hardware but that's important for this
application).

This works fine in Linux, but I would like to use, as always, FreeBSD.

The system seems stuck at 800MHz, despite powerds efforts, but the frequency
table also doesn't look right.

kern.timecounter.hw defaults to TSC-low which precludes frequency scaling, =
but
after changing it to HPET nothing really changes.

sysctl:

dev.cpu.0.freq_levels: 3601/95000 3600/95000 3400/87275 3200/79831 3000/735=
64
2800/66644 2600/60837 2400/54439 2200/49091 2000/43173 1800/38278 1600/32835
1400/27639 1200/23380 1000/18628 800/14778
dev.cpu.0.freq: 800


powerd -v:

load   0%, current freq  800 MHz (15), wanted freq  800 MHz
load   0%, current freq  800 MHz (15), wanted freq  800 MHz
load  20%, current freq  800 MHz (15), wanted freq  800 MHz
load 100%, current freq  800 MHz (15), wanted freq 3200 MHz
changing clock speed from 800 MHz to 3200 MHz
load 100%, current freq  800 MHz (15), wanted freq 7202 MHz
changing clock speed from 800 MHz to 3601 MHz
load  65%, current freq  800 MHz (15), wanted freq 7202 MHz
changing clock speed from 800 MHz to 3601 MHz
load 100%, current freq  800 MHz (15), wanted freq 7202 MHz
changing clock speed from 800 MHz to 3601 MHz
load 100%, current freq  800 MHz (15), wanted freq 7202 MHz
changing clock speed from 800 MHz to 3601 MHz
load 100%, current freq  800 MHz (15), wanted freq 7202 MHz
changing clock speed from 800 MHz to 3601 MHz

etc.

Hardware:
Handle 0x0047, DMI type 4, 48 bytes
Processor Information
        Socket Designation: U3E1
        Type: Central Processor
        Family: Core i9
        Manufacturer: Intel(R) Corporation
        ID: EC 06 09 00 FF FB EB BF
        Signature: Type 0, Family 6, Model 158, Stepping 12
        Flags:
                FPU (Floating-point unit on-chip)
                VME (Virtual mode extension)
                DE (Debugging extension)
                PSE (Page size extension)
                TSC (Time stamp counter)
                MSR (Model specific registers)
                PAE (Physical address extension)
                MCE (Machine check exception)
                CX8 (CMPXCHG8 instruction supported)
                APIC (On-chip APIC hardware supported)
                SEP (Fast system call)
                MTRR (Memory type range registers)
                PGE (Page global enable)
                MCA (Machine check architecture)
                CMOV (Conditional move instruction supported)
                PAT (Page attribute table)
                PSE-36 (36-bit page size extension)
                CLFSH (CLFLUSH instruction supported)
                DS (Debug store)
                ACPI (ACPI supported)
                MMX (MMX technology supported)
                FXSR (FXSAVE and FXSTOR instructions supported)
                SSE (Streaming SIMD extensions)
                SSE2 (Streaming SIMD extensions 2)
                SS (Self-snoop)
                HTT (Multi-threading)
                TM (Thermal monitor supported)
                PBE (Pending break enabled)
        Version: Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz
        Voltage: 1.3 V
        External Clock: 100 MHz
        Max Speed: 8300 MHz       // What ?
        Current Speed: 4653 MHz   // What? Seems fixed
        Status: Populated, Enabled
        Upgrade: Socket LGA1151
        L1 Cache Handle: 0x0044
        L2 Cache Handle: 0x0045
        L3 Cache Handle: 0x0046
        Serial Number: To Be Filled By O.E.M.
        Asset Tag: To Be Filled By O.E.M.
        Part Number: To Be Filled By O.E.M.
        Core Count: 8
        Core Enabled: 8
        Thread Count: 16
        Characteristics:
                64-bit capable
                Multi-Core
                Hardware Thread
                Execute Protection
                Enhanced Virtualization
                Power/Performance Control



What should I do? I have been happily using FreeBSD for so long that I never
considered something like this not working.

1) Can I lock the frequency somehow at boot?

2) Is there some alternative way to scale up the frequency?

3) Can it be locked from BIOS? Some BIOS setting changed?

4) Can it be fixed? Where should I start looking? What is new in coffee lak=
e /
the i9-9900 that is different from the usual Intel cpufreq approach?

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-243233-227>