HUNSN RJ38 N100 CPU Clock Speeds
-
That looks correct. The n100 base frequency is 800MHz. It turbos to much higher but powerd only sees that as 801. It can't see the actual turbo speeds as the CPU controls that itself based on the power and thermal restrictions.
The dashboard only shows a frequency when it's not running at max, which for Speedstep is anything above 800MHz.Steve
-
I read somewhere that FreeBSD doens't show actual turbo frequencies, but it shows them as "Max+1MHz", so 801Mhz would indicate that it's on turbo clocking.
-
Exactly. It only shows 801 for all frequencies above 800MHz.
Speedshift is a much better mechanism for controlling the CPU speed. It's in the CPU. It's much faster responding.
-
@stephenw10 Heh, my brain seems bit slow today... I posted the exact same thing as you, but just in different words...
Speaking on loader.conf settings, manuals say that the formatting is variable="value", but I see that some settings are not using quotes on the value.
I'm guessing that it's a safe bet to always use quotes, even if it works without them? -
I'm thinking this probably isn't a pfSense/BSD issue. I installed Win11 on a secondary drive. Running Passmark's CPU Mark I'm only getting 4291/1789 where the database shows an average of 5653/1975. That's about 25% down on the MT and 9% down on the ST. I went into the BIOS and Changed PL1 and PL2 from Disabled to Enabled but left the values at 0. That bumped MT up a slight 3.5% to 4455 and ST up 9.6% to 1962. Practically no sample size but those are where the numbers are at the moment. Temps peak around 52C when running the tests with PL1 and PL2 on.
-
@mvikman said in HUNSN RJ38 N100 CPU Clock Speeds:
I'm guessing that it's a safe bet to always use quotes, even if it works without them?
Yes. It will recognise that as logic true or false for a number of different syntaxes but the expected use is in quotes as shown on the man page.
-
So, I've made some progress. While I may ultimately keep things at stock, I believe I may have found the issue. I initially read up on these units at servethehome and decided to look into their forums to see what others were saying. In the BIOS PL1 is set to 6W by default. If I raise it to 12.5W then performance numbers jump (along with a little electricity and a lot of heat). I've reset all the settings in pfSense back to default (tuneables, loader.conf, etc) and am testing again. Here is what I now get:
At Idle pfSense GUI shows:
Current: (generally 1800-2000) MHz, Max: 806 MHz
Temperature 40C.
CPU Usage 0%-1%
Kill-A-Watt Shows: 9-10WRunning /usr/local/bin/stress -c 1
Current: (generally around 2900) MHz, Max: 806 MHz
Max Temp Seen 48C.
CPU Usage 25%
Kill-A-Watt Shows: 13WRunning /usr/local/bin/stress -c 2
Current: (generally around 2900) MHz, Max: 806 MHz
Max Temp Seen 52C.
CPU Usage 50%
Kill-A-Watt Shows: 14WRunning /usr/local/bin/stress -c 3
Current: (generally around 2900) MHz, Max: 806 MHz
Max Temp Seen 58C.
CPU Usage 75%
Kill-A-Watt Shows: 16WRunning /usr/local/bin/stress -c 4
Current: (generally around 2900) MHz, Max: 806 MHz
Max Temp Seen 64C.
CPU Usage 100%
Kill-A-Watt Shows: 17WI'm going to try with various PL1 settings and see what I get.
-
Nice. Testing locally with a CPU that supports Speedshift I found it's difficult to actually see the CPU frequency because Speedshift operates fast enough that simply running sysctl triggers an increase!
-
Is there a good way to run Passmark's performance test inside our environment? Right now I'm doing it in Windows and, while useful information, isn't best suited for what we need. I've found to install into Linux the commands are:
sudo apt install libncurses5 wget https://www.passmark.com/downloads/pt_linux_x64.zip unzip pt_linux_x64.zip sudo ./PerformanceTest/pt_linux_x64
I can't install libncurses5 using pkg and if I try to run the pt_linux_x64 it errors out
ELF binary type "3" not known. Exec format error. Binary file not executable.
If not I can keep going in Windows. It would just be nice to not keep switching back and forth.
-
pfSense is built in FreeBSD and FreeBSD is not Linux.
So I wouldn't expect that command to work. You would need a FreeBSD port. -
@stephenw10 Yeah, I get they aren't the same. It's just that a lot of programs made for Linux seem to work well for FreeBSD, or at least I can start there and modify the commands until I get it to work. I just posted the Linux commands in case it leads to someone having an idea of how I can get it to work. I don't know of any BSD port for it, sadly. I'll just keep plugging along in Windows.
-
@Stewart I don't know the best way to present the data in here, but here's what I've found:
Some interesting things here. CPUMark inside of Windows shows single-threaded performance maxes out at 7W so it's certainly worth it to increase from 6W to 7W. It's an extra 13% increase for 17% more power. Multi-threaded peters out once you pass 9W.
In BSD we can see that at 10W we hit the max sustained of 2.9Ghz but while it may look nice to have higher numbers that extra wattage may not turn into more performace, just more heat. And I don't see a reason to go over 10W since even 12.5W doesn't give us higher speeds.
Looks like 9W is the best performing PL1. It puts MC on par with an i5-7500 and ST about 10% below it. All with TDP about 85% less. My temperature numbers are likely a bit skewed. I ran higher and higher PL #'s over the course of the day. While I think the ceiling is probably right around 60C I would put the floor likely higher than the 47C. I've had the unit off for a while and it's still warm to the touch.
EDIT: Without updating the information above I just wanted to add that performance going from 10W to 11W was flat with MT down -0.23% and ST down -0.89%. As far as PassMark is concerned we've hit the ceiling on the chip. I'll be running PL1 at 9W as the case is able to keep it cool enough.
-
I ran some openssl tests in case anyone is wondering and compared them to the APU2D4 units we will upgrade from. It might provide a point of reference for anyone in the same boat that stumbles across this post:
-
Hey @Stewart
@Stewart said in HUNSN RJ38 N100 CPU Clock Speeds:
I can't say that looks right to me and doesn't seem to square up with the specs on Intel's Ark page for the N100. That shows a single core boost of 3.4Ghz and other places also list an all-core boost of 3.2Ghz.
I also have one of those Chinese fan-less mini PCs (Topton Brand) with an N100 processor. I noticed the same thing, I could only get the processor to boost at 2.9Ghz. I was looking in my BIOS at CPU power settings and I came across two settings that looked maybe suspect? They are, "Energy Efficient P-State" and "Energy Efficient Turbo" (see screenshots below) and they were both enabled by default. After reading the description for Energy Efficient Turbo I was thinking about turning it off and trying it out.
Have you tried any of these settings yet or are familiar with how they operate by chance?
-
@uplink What I've learned is that going faster doesn't translate into appreciable speed gains, at least from our perspective. I still have a lot of testing to do, particularly real work testing, but I've found that faster speeds aren't giving faster results. For example, move the PL1 to 10W gives me an extra 200Mhz but less than a 2% speed bump. Going over 10W keeps me at 2.9Ghz but overall performance starts going down. I have tried adjusting the settings for Energy Efficient Turbo but nothing has really made any difference.
Overall, though, I would think that either 7W or 9W will give us all the speed we need to run at 2.5Gbps with features enabled (Suricata, pfBloker, firewall rules, etc). The problem I'm having, though, is that I can only very rarely get it to run at 2.5Gbps. I'm only really getting 1.6Gbps consistently. HUNSN replied back that Turbo must be enabled but it's already enabled. Until I can get that resolved I can't really do a lot of real world testing.
-
The actual instantaneous speed each core will run at is dependent on the current thermal and power conditions. I can't find any specific data but I wouldn't expect to find that all 4 cores can ever reach 3.6GHz for example. And I wouldn't expect even one core to reach that for very long.
-
@stephenw10 True. The max boost numbers they give are fairly misleading. It shifts and changes so fast that you may never actually see the 3.4 if you are watching. In pfSense the only real way I had to monitor was watching in the GUI. Using Windows I could utilize HWmon which locks the highest frequency so you can see what it went up to. I don't expect to see those max clock speeds but I do expect to see a consistent all-core speed a couple hundred Mhz below the max turbo speed. This chip has a single core turbo of 3.4Ghz and an all-core turbo of 3.2Ghz so I would expect to see it leveling out around 2.8Ghz when all cores are pushed and have it slowly throttle down if temps get too high. My issue was that the highest I could see in the pfSense GUI was 1.8Ghz and that just doesn't seem acceptable to me for a chip marketed as "Up To" 3.4Ghz. I'm happy with 2.7Ghz. Once I can get the unit to give me 2.5Ghz and I can really load it up, we'll see if dropping down a watt or two makes sense.
-
@Stewart said in HUNSN RJ38 N100 CPU Clock Speeds:
This chip has a single core turbo of 2.4Ghz and an all-core turbo of 3.2Ghz
You mean the other way? I expect the single core max turbo frequency to be higher.
But I agree it should level out somewhere between those.
-
@stephenw10 I meant single core is 3.4ghz and all core is 3.2Ghz. Whoops! I'm going to update my previous post to fix that.
-
For anyone else that comes along to see, clock speeds vary wildly depending on PL1, PL2, and PL4. I found setting PL1=9, PL2=10, and PL3=30 to be the best balance of performance (single-threaded for OpenVPN) and heat.
-