High(er) Idle Power Consumption (Trial, no HDD)


Henrx

Recommended Posts

Dear all,

 

finally, I want to switch to unRaid. Love the concept/design of the product.

 

I installed the trial version on a USB stick and booted unRaid. Server is a Dell T20 (Xeon, 24GB ECC RAM) without any HDDs/SSDs connected. Only the USB drive with unRaid.

The power consumption is 18,5 watts. With the same BIOS setup Windows 10 Pro x64 (on SSD, no USB drive), with full workstation configuration, measures at 11,5 watts after login.

 

The unRaid dashboard shows no CPU utilization (less than 5%), but the CPU frequency hovers around 3000MHz on each core. Sometimes drops to 1700MHz, but then again to the 3000Mhz range.

 

What is the problem?

 

Best regards,

Henrx

 

Link to comment

Dear all,

 

finally, I want to switch to unRaid. Love the concept/design of the product.

 

I installed the trial version on a USB stick and booted unRaid. Server is a Dell T20 (Xeon, 24GB ECC RAM) without any HDDs/SSDs connected. Only the USB drive with unRaid.

The power consumption is 18,5 watts. With the same BIOS setup Windows 10 Pro x64 (on SSD, no USB drive), with full workstation configuration, measures at 11,5 watts after login.

 

The unRaid dashboard shows no CPU utilization (less than 5%), but the CPU frequency hovers around 3000MHz on each core. Sometimes drops to 1700MHz, but then again to the 3000Mhz range.

 

What is the problem?

 

Best regards,

Henrx

Sounds like frequency governor.  What model Xeon you have?

Link to comment

Stop using the UI to monitor while testing and also try adding the following to the syslinux.cfg configuration file: intel_pstate=disable

 

This will use the older intel state device, which seems to not throttle up to maximum cpu as quickly as the intel pstate does.

 

Here is my full syslinux.cfg file for reference.

 

# cat /boot/syslinux/syslinux.cfg

default /syslinux/menu.c32
menu title Lime Technology
prompt 0
timeout 50
label unRAID OS
  menu default
  kernel /bzimage
  append intel_pstate=disable initrd=/bzroot
label unRAID OS Safe Mode (no plugins)
  kernel /bzimage
  append intel_pstate=disable initrd=/bzroot unraidsafemode
label Memtest86+
  kernel /memtest

 

Then to see CPU speed use something less taxing as the UI, such as the following:

# cat /proc/cpuinfo  | egrep -i mhz

cpu MHz         : 1600.000
cpu MHz         : 1600.000
cpu MHz         : 1600.000
cpu MHz         : 1600.000
cpu MHz         : 1600.000
cpu MHz         : 1600.000
cpu MHz         : 1600.000
cpu MHz         : 1600.000

Link to comment

Thanks for the help, but my original problem still exists.

 

The pstate command helps to lower the CPU MHz to 800 MHz on 2 sometimes 3 cores. One core still hovers around 3000 MHz and 1 jumps from 800 to 1700 MHz.

Power consumption measured at around 19 watts (not in dashboard, looked up the cpu MHz via putty).

 

Since the unraid server is planned for home use and energy cost is high here, I really want to lower the idle power consumption (~8 watts difference, that's nearly 2 NAS HDDs idling).

 

Best regards,

Henrx

Link to comment

Is this maybe a Trial "feature"?

 

Log shows (loop of the following):

an 22 18:35:32 Tower emhttp: shcmd (184): rmmod md-mod |& logger
Jan 22 18:35:32 Tower kernel: md: unRAID driver removed
Jan 22 18:35:32 Tower emhttp: shcmd (185): modprobe md-mod super=/boot/config/super.dat slots=3 |& logger
Jan 22 18:35:32 Tower kernel: md: unRAID driver 2.5.3 installed
Jan 22 18:35:32 Tower kernel: read_file: error 2 opening /boot/config/super.dat
Jan 22 18:35:32 Tower kernel: md: could not read superblock from /boot/config/super.dat
Jan 22 18:35:32 Tower kernel: md: initializing superblock
Jan 22 18:35:32 Tower emhttp: Trial key detected, GUID: yxz FILE: /boot/config/Trial.key
Jan 22 18:35:32 Tower emhttp: Device inventory:
Jan 22 18:35:32 Tower emhttp: shcmd (186): udevadm settle
Jan 22 18:35:32 Tower emhttp: array slots: 3
Jan 22 18:35:32 Tower emhttp: cache slots: 1
Jan 22 18:35:32 Tower emhttp: import 3 cache device: no device
Jan 22 18:35:32 Tower emhttp: import flash device: sda
Jan 22 18:35:32 Tower kernel: mdcmd (1): import 0 0,0
Jan 22 18:35:32 Tower kernel: mdcmd (2): import 1 0,0
Jan 22 18:35:32 Tower kernel: mdcmd (3): import 2 0,0

Link to comment

Started an array (1 HDD and 1 SSD).

Still 2 cores with elevated MHz, after hours of not using the server. No log information for ours.

 

I'll try other systems, must know if this is an issue with my hardware or settings.

How are you checking the CPU usage?  Ideally it should not be via the GUI as that can stop the cores throttling down.  Having said that it may just be a function of the way that the Linux kernel handles throttling for your particular processor.
Link to comment

To watch cpu/core frequency more accurately, telnet/SSH to server and use:

 

watch -n.1 'cat /proc/cpuinfo|grep MHz'

 

 

Post the results of these commands from telnet/SSH:

 

cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_available_governors

cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor

 

 

 

Link to comment

So...

root@Tower:~# cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_available_governors
conservative userspace powersave ondemand performance
conservative userspace powersave ondemand performance
conservative userspace powersave ondemand performance
conservative userspace powersave ondemand performance
root@Tower:~#

 

And...

root@Tower:~# cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
ondemand
ondemand
ondemand
ondemand
root@Tower:~#

 

The "watch" is going "crazy". Like I already wrote, 2 cores in the ~800 MHz, 1 core ~1100-1800 MHz and the last 1 at ~ 2800-3200 MHz (always random).

Link to comment

Have you started the array and monitored the power usage?  The unRAID polls constantly until the array is started so it may cause a core or two to show higher usage than what would be considered idle.  If you don't care about a couple percentage of snappiness you can change the governor to conservative.  The difference between ondemand and conservative is ondemand will jump up to full clock quicker and be slower to drop back down while conservative favors lower clocks with a slower rise to full speed.  Both can be manually tweaked to get a decent response.

 

Try changing to conservative and see how you like, use the watch command posted earlier to see the result:

 

echo conservative > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo conservative > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
echo conservative > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
echo conservative > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor

 

A reboot will revert the governor back to normal.  You can add the above lines to the go file to have it persist.  The other option is to keep ondemand and just adjust the thresholds so it acts more conservative.

Link to comment

A reboot will revert the governor back to normal.  You can add the above lines to the go file to have it persist.  The other option is to keep ondemand and just adjust the thresholds so it acts more conservative.

 

Thanks for all the information you've posted so far, I happened to stumble across this while I've been wondering the same thing for weeks. I can't find the file you're talking about to edit, though, to keep the settings on reboots.

Link to comment

A reboot will revert the governor back to normal.  You can add the above lines to the go file to have it persist.  The other option is to keep ondemand and just adjust the thresholds so it acts more conservative.

 

Thanks for all the information you've posted so far, I happened to stumble across this while I've been wondering the same thing for weeks. I can't find the file you're talking about to edit, though, to keep the settings on reboots.

 

/boot/config/go

 

 

Its located on your flash drive.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.