Topton N100 Reporting 402 MHz
-
Hmm, 801 in steedstep represents 800+turbo so could be correct. But I'd expect it to be show 801 as current under load.
-
@stephenw10 Yeah I'm beginning to worry there may be a bad sensor that's causing false positive thermal throttling. And I've also found information suggesting that with 13th generation Intel processors there's no way to configure things to ignore this BD_PROCHOT signal. But there does seem to be another indication that there's something odd going on with the sensors. The dashboard shows all 4 cores:
But when I go to Status > Monitoring and look at the thermal sensors, it only shows zone 0, and there's no data past 11:37 on 2/7:
I've double checked that I have the Intel sensor selected in System > Advanced > Miscellaneous so I'm not sure how to interpret that.
-
You should see 'coretemp' entries in the logs if it recognises the CPU core sensors.
[2.7.2-RELEASE][admin@t70.stevew.lan]/root: dmesg | grep coretemp coretemp0: <CPU On-Die Thermal Sensors> on cpu0 coretemp0: Setting TjMax=90 coretemp1: <CPU On-Die Thermal Sensors> on cpu1 coretemp1: Setting TjMax=90 coretemp2: <CPU On-Die Thermal Sensors> on cpu2 coretemp2: Setting TjMax=90 coretemp3: <CPU On-Die Thermal Sensors> on cpu3 coretemp3: Setting TjMax=90
-
@stephenw10 So I have a single line out output from that:
coretemp0: <CPU On-Die Thermal Sensors> on cpu0
From your sample though it seems like there should be an entry for each core? Although on my other machine that seems to be working, I also only have an entry for cpu0.
-
There is on that older device yes. The N100 may not present like that though. I'm not sure since I don't have one to test.
-
@stephenw10 Yeah. Well I appreciate all your input. I can't think of much else to try until I can get my hands on the thing this weekend, play around with BIOS settings, maybe try booting Linux from a thumb drive as a point of comparison. Really hoping it's not just a bum sensor that I can't do anything about (or a trash BIOS since these things never have updates). The most amusing part of this is I was updating from a PC Engines apu2e4 and its comparatively anemic 1GHz cores . . . so now I get stuck at sub-1GHz
-
Hmm, I guess I'd try booting something else on it as a test. See if that shows the expected freqs, and how it's setting them.
-
Your Topton is probably made by CWWK, as my 'HUNSN' branded one is, and I had a similar issue at first because the 'C States' weren't enabled in the BIOS, which is what Intel SpeedShift uses to boost and cut power/speed as needed per core, from what I understand. And I wanted to use SpeedShift instead of SpeedStep. Turns out that the 6 ethernet port 'fanless' heatpipe+tall fins version of the CWWK router/pc came with a gimped bios that didn't expose the settings to enable C States. I think the 2 and 4 port versions don't have that issue (was discussed on another forum). Mine showed a speed like 804MHz in PFSense GUI... Now, with a modded bios and C States enabled, it can boost over 3ghz but it now says in PFSense "Max: 2496 MHz". And with C States enabled it does indicate that it can drop below 500MHz and the CPU temperature is in upper 20s C and rarely hits the mid 40s under load. So you may want to double check in the BIOS that C States are enabled and test it while in the CLI as that seems to be more accurate than what PFSense shows in the GUI on these CWWK boxes, if that is what you have...
-
@Tzvia Thank you for this additional information. I'll be sure to check BIOS options first thing when I have physical access to this machine again this weekend. Mine is a 4-port unit, and I did do a cursory check of BIOS settings during installation. I don't recall seeing C-state config, but also at the time I didn't have any particular reason to be looking for it, so hopefully I just missed it. I know the BIOS updates with these things are fraught even when possible, but if it does end up looking like I have a hobbled BIOS as the root cause maybe I'll need to look for one that seems compatible, cross my fingers and flash it, haha.
-
@Tzvia Just a quick follow-up too, not sure whether this means more to you than it does to me, but the sysctl output appears to indicate that it supports C1, C2, and C3. Although I don't know if that could just mean "the processor model supports it" but they could still be disabled in the BIOS. Here's the output pertaining to one of the 4 cores though:
dev.cpu.0.temperature: 38.0C dev.cpu.0.coretemp.throttle_log: 0 dev.cpu.0.coretemp.tjmax: 105.0C dev.cpu.0.coretemp.resolution: 1 dev.cpu.0.coretemp.delta: 67 dev.cpu.0.cx_method: C1/mwait/hwc C2/mwait/hwc C3/mwait/hwc dev.cpu.0.cx_usage_counters: 189006045 0 0 dev.cpu.0.cx_usage: 100.00% 0.00% 0.00% last 50us dev.cpu.0.cx_lowest: C1 dev.cpu.0.cx_supported: C1/1/1 C2/2/127 C3/3/1048 dev.cpu.0.freq_levels: 801/6000 800/6000 700/5160 dev.cpu.0.freq: 700 dev.cpu.0.%parent: acpi0 dev.cpu.0.%pnpinfo: _HID=ACPI0007 _UID=0 _CID=none dev.cpu.0.%location: handle=\_SB_.PR00 dev.cpu.0.%driver: cpu dev.cpu.0.%desc: ACPI CPU
-
Mmm, I'm not sure C-states is correct there. P-states are what Speedstep uses, that's shown as
801/6000 800/6000 700/5160
for you. Speedshift just changes the levels sing hardware in the CPU rather than software controlled which means it's much faster. -
@stephenw10 Alright, I have this Topton machine back in my possession now, just swapped the old apu2e4 back in for now. I just booted MX Linux from a thumb drive, and it has no problems at all. I can see from inxi that it boosts a single core up to 3400MHz for the openssl speed test, and that speed test is executing about 8X faster than it is under pfSense:
$ openssl speed -elapsed -evp aes-256-cbc You have chosen to measure elapsed time instead of user CPU time. Doing AES-256-CBC for 3s on 16 size blocks: 160803402 AES-256-CBC's in 3.00s Doing AES-256-CBC for 3s on 64 size blocks: 52614619 AES-256-CBC's in 3.00s Doing AES-256-CBC for 3s on 256 size blocks: 10652587 AES-256-CBC's in 3.00s Doing AES-256-CBC for 3s on 1024 size blocks: 2021881 AES-256-CBC's in 3.00s Doing AES-256-CBC for 3s on 8192 size blocks: 246344 AES-256-CBC's in 3.00s Doing AES-256-CBC for 3s on 16384 size blocks: 121479 AES-256-CBC's in 3.00s version: 3.0.11 built on: Mon Oct 23 17:52:22 2023 UTC options: bn(64,64) compiler: gcc -fPIC -pthread -m64 -Wa,--noexecstack -Wall -fzero-call-used-regs=used-gpr -DOPENSSL_TLS_SECURITY_LEVEL=2 -Wa,--noexecstack -g -O2 -ffile-prefix-map=/build/reproducible-path/openssl-3.0.11=. -fstack-protector-strong -Wformat -Werror=format-security -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_BUILDING_OPENSSL -DNDEBUG -Wdate-time -D_FORTIFY_SOURCE=2 CPUINFO: OPENSSL_ia32cap=0x7ffaf3bfffebffff:0x98c007bc239ca7eb The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes 16384 bytes AES-256-CBC 857618.14k 1122445.21k 909020.76k 690135.38k 672683.35k 663437.31k
So I think it's safe to say that whatever this is, it's not a hardware issue, and likely not a BIOS setting issue (unless there's some BIOS setting that makes FreeBSD very unhappy but Linux doesn't care about).
Now in pfSense I am of course restoring the config from the apu2e4, but there were really no exotic changes made to it. That said, barring other ideas I could try doing a reinstall of pfSense with no config restore and see whether I still get this behavior. But does this make any obvious sense? Certainly there are others using N100s with pfSense.
I'm trying to think of what to test next and open to any ideas Thanks again!
-
It could still be a BIOS issue. Many will pass different values depending on the running OS. Though historically that has been a Windows issue.
You can try running FreeBSD directly.
-
@stephenw10 Good thought. Yeah I'm thinking next I'll boot a fresh pfSense image from a thumb drive because if that does not exhibit the problem, it will implicate something about my config, but if it does I'll try straight FreeBSD.
-
@stephenw10 Well whatever this is, it seems to be either a FreeBSD thing or to your point, something that the BIOS is passing differently to FreeBSD, or FreeBSD is acting on differently.
I booted the pfSense installed from a thumb drive and dropped to the rescue prompt, ran the same openssl speed test and saw the same poor results. Next I grabbed the NanoBSD live system image and booted it, again ran the same openssl speed test, and again saw the same slow results. The current NanoBSD is based on FreeBSD 14.0-RELEASE-p4.
I can't believe that no one else is using an N100 with pfSense (or is and has not noticed this issue) so it leads me back to wondering about the BIOS settings, but there's really nothing obvious there, to me at least.
I'm going to try to get some pictures of the potentially interesting BIOS settings to post next . . . not sure really where to go from here.
-
There are a whole, bunch of people using N100 based devices and not seeing that sort of low performance. Which is another reason I'm leaning toward some odd BIOS behaviour. I pretty guaranty that BIOS was never tested with FreeBSD. You're lucky if it was tested with Linux.
Been a while since I tried this but you might try adding a loader value:
hw.acpi.install_interface='Linux'
-
@stephenw10 Ha that's a very fair point! I'll try the loader value soon, thank you. The following are (poor quality, sorry) pictures of the CPU Configuration BIOS options screens, which strike me as the most likely relevant, at least:
CPU Configuration:
/home/john/Pictures/BIOS_Advanced_CPU_Configuration.jpegSMM Enhancement sub-menu:
/home/john/Pictures/BIOS_Advanced_CPU_Configuration_SMM_Enhancement.jpegAnd this is everything available in the Advanced tab of the BIOS interface:
/home/john/Pictures/BIOS_Advanced.jpegI realize that this is becoming something of a wild goose chase but if anything here catches your eye . . .
-
Hmm, I don't have an N100 (or similar) to play with so I'm not really sure. You might be able to set a higher flex ratio if you enable override there.
-
@stephenw10 Yeah that was something I tried but anything higher than 8 seems to just snap back to 8. I found some conflicting information about that setting, but the consensus seemed to be that it was the minimum multiplier allowed. It would take 7, but nothing above 8. Perhaps I'll begin the fraught task of seeing whether I can locate a different BIOS to try with this thing But going to try your loader value first for sure.
-
I had been pointed in the right direction in a couple of threads at the 'Serve the Home Forums' (STH Youtube channel's forums, under NETWORKING.). There are threads dealing with the CWWK 6 ethernet port (what I have) and 4 ethernet port models... I was just 'let's try this.. no no... try that...' and getting nowhere till I found that forum and hunkered down and read the two long threads on those two models and decided to try what was suggested (including a different BIOS with all the hidden settings exposed). Yea not a turnkey device but I was determined to make it work...
PFSense still doesn't display it quite right in the GUI
but I'm not complaining at this point.Once tweaked, in PFS I was able to go to System/Advanced/Miscellaneous and enable SpeedShift with 'core level control' and after some testing, left it at 60%. PowerD set OFF.