Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Topton N100 Reporting 402 MHz

    Scheduled Pinned Locked Moved Hardware
    152 Posts 16 Posters 29.2k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      Tzvia
      last edited by

      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

      Current build:
      Hunsn/CWWK Pentium Gold 8505, 6x i226v 'micro firewall'
      16 gigs ram
      500gig WD Blue nvme
      Using modded BIOS (enabled CSTATES)
      PFSense 2.72-RELEASE
      Enabled Intel SpeedShift
      Snort
      PFBlockerNG
      LAN and 5 VLANS

      T 2 Replies Last reply Reply Quote 1
      • T
        TheNarc @Tzvia
        last edited by

        @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.

        1 Reply Last reply Reply Quote 0
        • T
          TheNarc @Tzvia
          last edited by

          @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
          
          1 Reply Last reply Reply Quote 0
          • stephenw10S
            stephenw10 Netgate Administrator
            last edited by

            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.

            T 1 Reply Last reply Reply Quote 0
            • T
              TheNarc @stephenw10
              last edited by

              @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!

              1 Reply Last reply Reply Quote 0
              • stephenw10S
                stephenw10 Netgate Administrator
                last edited by

                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.

                T 2 Replies Last reply Reply Quote 0
                • T
                  TheNarc @stephenw10
                  last edited by

                  @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.

                  1 Reply Last reply Reply Quote 0
                  • T
                    TheNarc @stephenw10
                    last edited by

                    @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.

                    1 Reply Last reply Reply Quote 0
                    • stephenw10S
                      stephenw10 Netgate Administrator
                      last edited by

                      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'

                      T X 3 Replies Last reply Reply Quote 0
                      • T
                        TheNarc @stephenw10
                        last edited by

                        @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:
                        37bc4120-2a93-44da-9cbe-3e71c4788fa2-BIOS_Advanced_CPU_Configuration.jpeg /home/john/Pictures/BIOS_Advanced_CPU_Configuration.jpeg

                        SMM Enhancement sub-menu:
                        4bf2c146-9686-4183-b241-33f084ebed25-BIOS_Advanced_CPU_Configuration_SMM_Enhancement.jpeg /home/john/Pictures/BIOS_Advanced_CPU_Configuration_SMM_Enhancement.jpeg

                        And this is everything available in the Advanced tab of the BIOS interface:
                        f2272c3b-7df9-4292-b771-b82650d26ce3-BIOS_Advanced.jpeg /home/john/Pictures/BIOS_Advanced.jpeg

                        I realize that this is becoming something of a wild goose chase but if anything here catches your eye . . .

                        1 Reply Last reply Reply Quote 0
                        • stephenw10S
                          stephenw10 Netgate Administrator
                          last edited by

                          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.

                          T 1 Reply Last reply Reply Quote 0
                          • T
                            TheNarc @stephenw10
                            last edited by

                            @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.

                            1 Reply Last reply Reply Quote 0
                            • T
                              Tzvia
                              last edited by Tzvia

                              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
                              aae635cb-8186-4b02-bac2-5f2bee234182-image.png
                              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.

                              Tzvia

                              Current build:
                              Hunsn/CWWK Pentium Gold 8505, 6x i226v 'micro firewall'
                              16 gigs ram
                              500gig WD Blue nvme
                              Using modded BIOS (enabled CSTATES)
                              PFSense 2.72-RELEASE
                              Enabled Intel SpeedShift
                              Snort
                              PFBlockerNG
                              LAN and 5 VLANS

                              1 Reply Last reply Reply Quote 2
                              • X
                                xavix @stephenw10
                                last edited by

                                @stephenw10 just wanted to chime in and share that I running pfSense on a Trigkey G5 mini PC with a N100 and have also wondered why my CPU reads a max of 806 Mhz. Watching this thread in hope to find answers!

                                1 Reply Last reply Reply Quote 0
                                • T
                                  TheNarc @stephenw10
                                  last edited by TheNarc

                                  @stephenw10 said in Topton N100 Reporting 402 MHz:

                                  Been a while since I tried this but you might try adding a loader value:
                                  hw.acpi.install_interface='Linux'

                                  Unfortunately no change in behavior with that. I was momentarily optimistic when I found this post on unlocking hidden BIOS settings for the exact board that my machine has, although it does not seem to do anything for me.

                                  Another post here purports to have a modified BIOS for it with more settings unlocked, which is clearly risky, but I may try because I'm out of ideas at this point . . .

                                  1 Reply Last reply Reply Quote 0
                                  • stephenw10S
                                    stephenw10 Netgate Administrator
                                    last edited by

                                    Hmm, that's a looooong thread! If there are answers they're probably there.

                                    T 2 Replies Last reply Reply Quote 0
                                    • T
                                      TheNarc @stephenw10
                                      last edited by

                                      @stephenw10 Ha, yeah and two separate very long threads unfortunately, and both quite meandering and not at all specific to one piece of hardware or problem. Lots of fun.

                                      1 Reply Last reply Reply Quote 0
                                      • T
                                        TheNarc @stephenw10
                                        last edited by TheNarc

                                        @stephenw10 I threw caution to the wind and flashed the modded BIOS from the one thread, and against all odds it didn't brick me. But it didn't open up new settings that seemed interesting to this issue either (e.g. CPU power related things). I booted up pfSense anyway and ran the openssl test a few times. The first time it was the same as always, but then it got a little better. Still about 1/4 to 1/3 of what I was seeing in Linux though. I checked the CPU freqs via sysctl -a | grep dev.cpu and saw they were going higher, but for whatever reason seem to top out at 1813MHz, which feels like a random limit.

                                        This was with SpeedShift enabled in pfSense and set to 0 (max performance). Next I tried with SpeedShift disabled entirely, and I seem to be getting openssl speed results closer to 1/2 what I saw in Linux, but the CPU freqs as reported by sysctl never move from 700MHz, so they're pretty clearly inaccurate.

                                        Running powerd -v while I run the openssl speed test shows the current freq going to 801MHz under load, which I have read in various places is the maximum reported value (as reported by something at least) when it's at a boosted frequency. However it's also curious that the "wanted freq" reported by powerd -v never goes above 1602MHz, whereas the cores on the N100 can boost to 3.0GHz (or a single core can burst to 3.4GHz).

                                        What feels suspicious there is that 1.6GHz is ~50% of 3.0GHz (or 3.4GHz) and I am seeing ~50% the benchmarks for the openssl test that I saw with Linux. But then the question is: why would the "wanted" frequency top out at about half what the processor is capable of?

                                        In any case, 1.6GHz is better than my apu2e4, but I do hate not understanding things :) Maybe I'll try randomly playing with some more BIOS settings if I get time, but since none of them seem obviously relevant it will literally just be a game of flipping a switch and seeing if it does anything, ha.

                                        T 1 Reply Last reply Reply Quote 0
                                        • T
                                          TheNarc @TheNarc
                                          last edited by

                                          By way of an amusing point of comparison on my older N5105 machine, powerd -v reports this during the openssl test:
                                          load 102%, current freq 2795 MHz ( 0), wanted freq 3992 MHz

                                          And that's on a CPU with a maximum boost frequency of 2.9GHz. So I'm kind of lost with respect to attempting to establish a ground truth source of information. It seems that every place I look for a reported CPU frequency gives me something different . . .

                                          1 Reply Last reply Reply Quote 0
                                          • stephenw10S
                                            stephenw10 Netgate Administrator
                                            last edited by

                                            Mmm, in my experience powerd will show 'wanted' values between the actual available steps too. So it showing wanting more than can be achieved is not entirely surprising.

                                            T 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.