October 3, 20196 yr I built a new server a few months back thinking it was going to handle everything I needed as my storage/media server. My results have been mediocre to frustrating with it. I've exhuasted my knowledge and I cant seem to figure out where my issue is. I am running an R720xd LFF 2x E5-2660 128GB ECC (8x16GB) PERC H310 Mini (Non-RAID mode) Mix of 2TB & 3TB Drives (25TB) Samsung 850 Evo 250GB SSD cache drive. Overall This thing is great, it just seems way slower than I feel it should be. Switching between tabs takes a while. Trying to update dockers can take up to 20 minutes sometimes for it to finish. Loading the plugins page takes 2-3 minutes every time I try to access it. Writing and reading data from the array seems to be unaffected. I can copy to and from at full Gigabit speeds. When it comes to Plex, I see my biggest issues. I can't even transcode one movie. I get errors on my Roku TV saying the server is not powerful enough. I can direct play all day, but I'm a subtitles fan so transcoding is a must. I've moved transcode to /tmp. I've even tried installing plex on an SAS SSD mounted through unassigned drives to see if it made a difference with no success. CPU speeds seem like it could be the issue. "Tips and Tweaks" shows the intel Pstate driver is installed and set to Performace with Enable Intel Turbo set to yes and BIOS is set to Performance mode OS Controlled. But when I try to transcode more than 2 movies at a time my CPU Core speeds drop from 1.2GHz to 180Mhz. I almost never see it sit at it base clock speed of 2.2GHz and its never hit 3Ghz boost. I'm starting to get frustrated because I know these CPUs should be able to handle about 4 1080p transcodes per CPU and I can only get one 720p transcode that will still sometimes fail. Not sure where to go from here. I've asked on the Plex forums but got no help there. Reddit has helped me find the CPU frequency issue but I'm still lost. unraid-diagnostics-20191003-0615.zip
October 3, 20196 yr Author When the server is under load (2 transcodes for this example) CPU Speeds drop to under 200MHz and stay there. Once I stop the transcodes the CPU speeds go back up. It doesn't make any sense to me.
October 3, 20196 yr I created this script to show CPU frequency, does it show anything different? #!/bin/bash numcpu=$(nproc --all) counter=0 while [ $counter -lt $numcpu ]; do let cpu=counter+1 cpufreq=$(cat /sys/devices/system/cpu/cpu$counter/cpufreq/scaling_cur_freq) cpufreq=$(echo "scale = 2; $cpufreq / 1000000" | bc) echo "CPU $cpu: $cpufreq GHz" let counter=counter+1 done
October 3, 20196 yr Author I'm guessing I need to add this to User scripts? This is the output I get: Script location: /tmp/user.scripts/tmpScripts/CPU Freq/script Note that closing this window will abort the execution of this script /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 1: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 2: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 3: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 4: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 5: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 6: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 7: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 8: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 9: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 10: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 11: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 12: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 13: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 14: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 15: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 16: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 17: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 18: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 19: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 20: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: echo: write error: Broken pipe CPU 21: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 22: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 23: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 24: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 25: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 26: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 27: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 28: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 29: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 30: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 31: GHz /tmp/user.scripts/tmpScripts/CPU Freq/script: line 9: bc: command not found CPU 32: GHz Edited October 3, 20196 yr by wonderbread24
October 3, 20196 yr Just now, wonderbread24 said: I'm guessing I need to add this to User scripts? I just put it in my path. Called it “cpufreq”.
October 3, 20196 yr Oh, I forgot that I had to install the "bc" command from Nerd Pack to do the math.
October 3, 20196 yr Author CPU 1: .95 GHz CPU 2: 2.09 GHz CPU 3: 1.28 GHz CPU 4: 2.19 GHz CPU 5: 1.36 GHz CPU 6: 2.16 GHz CPU 7: 1.15 GHz CPU 8: 2.13 GHz CPU 9: 1.67 GHz CPU 10: 1.84 GHz CPU 11: 1.31 GHz CPU 12: 1.83 GHz CPU 13: 1.30 GHz CPU 14: 2.18 GHz CPU 15: 1.45 GHz CPU 16: 2.19 GHz CPU 17: 1.68 GHz CPU 18: 2.01 GHz CPU 19: 1.71 GHz CPU 20: 1.91 GHz CPU 21: 1.12 GHz CPU 22: 2.07 GHz CPU 23: .96 GHz CPU 24: 2.07 GHz CPU 25: .87 GHz CPU 26: 2.10 GHz CPU 27: 1.14 GHz CPU 28: 1.97 GHz CPU 29: 1.54 GHz CPU 30: 2.08 GHz CPU 31: 1.42 GHz CPU 32: 2.00 GHz Thats at Idle. Below is with 2 Transcodes. Note that closing this window will abort the execution of this script CPU 1: 1.33 GHz CPU 2: 1.57 GHz CPU 3: 1.86 GHz CPU 4: 1.92 GHz CPU 5: .77 GHz CPU 6: .98 GHz CPU 7: 1.96 GHz CPU 8: 1.48 GHz CPU 9: 1.87 GHz CPU 10: .72 GHz CPU 11: 2.05 GHz CPU 12: .66 GHz CPU 13: 1.70 GHz CPU 14: .62 GHz CPU 15: 1.85 GHz CPU 16: 1.44 GHz CPU 17: 1.54 GHz CPU 18: .59 GHz CPU 19: .81 GHz CPU 20: .67 GHz CPU 21: 1.69 GHz CPU 22: 1.05 GHz CPU 23: 1.49 GHz CPU 24: .96 GHz CPU 25: 1.76 GHz CPU 26: 1.17 GHz CPU 27: 1.88 GHz CPU 28: 1.24 GHz CPU 29: 2.06 GHz CPU 30: 1.49 GHz CPU 31: 2.01 GHz CPU 32: .77 GHz
October 3, 20196 yr I wouldn't know how the cpuinfo file gets the current frequency. I know though I don't believe 180Mhz is a valid scaling frequency. My i5 8400 only goes down to a minimum of 800Mhz. You can check the minimum frequency by checking scaling_min_freq on one of the CPU's.
October 3, 20196 yr Author Grabbing a random core show this: root@Unraid:/sys/devices/system/cpu/cpu21/cpufreq# cat scaling_min_freq 1200000
October 3, 20196 yr 6 minutes ago, wonderbread24 said: Grabbing a random core show this: root@Unraid:/sys/devices/system/cpu/cpu21/cpufreq# cat scaling_min_freq 1200000 Definitely not 180Mhz, 1.2GHz. Edited October 3, 20196 yr by Taddeusz
October 3, 20196 yr Author I figured it out! Under the IDRAC for the server, there was a power cap policy set to limit the power usage to 210w. Any load that hit the server would make the server throttle because it hit that load. I changed it to 400w and the CPUs are boosting now. Quote Note that closing this window will abort the execution of this script CPU 1: 2.93 GHz CPU 2: 2.36 GHz CPU 3: 2.59 GHz CPU 4: 2.54 GHz CPU 5: 2.91 GHz CPU 6: 2.06 GHz CPU 7: 2.93 GHz CPU 8: 1.94 GHz CPU 9: 2.92 GHz CPU 10: 1.73 GHz CPU 11: 2.86 GHz CPU 12: 2.57 GHz CPU 13: 2.84 GHz CPU 14: 2.73 GHz CPU 15: 2.86 GHz CPU 16: 2.40 GHz CPU 17: 2.82 GHz CPU 18: 2.60 GHz CPU 19: 2.82 GHz CPU 20: 2.17 GHz CPU 21: 2.81 GHz CPU 22: 2.15 GHz CPU 23: 2.94 GHz CPU 24: 2.65 GHz CPU 25: 2.74 GHz CPU 26: 1.51 GHz CPU 27: 2.78 GHz CPU 28: 2.14 GHz CPU 29: 2.81 GHz CPU 30: 2.18 GHz CPU 31: 2.77 GHz CPU 32: 1.62 GHz
October 3, 20196 yr Awesome, glad you found the issue...I would have never figured out to look in iDrac.
October 3, 20196 yr 3 hours ago, wonderbread24 said: I figured it out! Under the IDRAC for the server, there was a power cap policy set to limit the power usage to 210w. Any load that hit the server would make the server throttle because it hit that load. I changed it to 400w and the CPUs are boosting now. It would be a good idea to do some research on that specific server configuration and see if it was set that way for a reason. It's possible you could run into overheating if that configuration doesn't have the airflow or ducting rated to move that much heat.
October 3, 20196 yr Author That was one thing I looked at. As a test I fired up 6 transcodes and set the fans to 44%. Not a hiccup on the transcodes and temps hit 75c in a room that was 78f. I'll never run 6 transcodes may 3 or 4 at the most so my temps will be fine.
Archived
This topic is now archived and is closed to further replies.