I recently upgraded my HTPC to a E6550. It had more grunt than I required but was the slowest CPU at the store at the time. Not being one to wait I simply grabbed it. So with power to spare I decided to underclock and undervolt the CPU and share my findings. Much the same principle as overclocking just simply in reverse, my end goal was to make the CPU as cool as possible while handling anything I could throw at it.
I had previously looked at the mobile offerings from Intel but at double the price of this CPU I couldn't justify the extra cost.
Finding the minimum vcore
I went straight to 2Ghz for this CPU as that was simply a multi change from 7x to 6x. From here I slowly dropped the vcore then stress tested using Everest for 5mins. After 5mins I dropped the vcore again, rinsed and repeated. Its important here to note that 5mins isn't enough to verify a 100% stable CPU but gives and indication. Once I have found my believed stable setting I always stress test for 12hours.
At 2Ghz I found the CPU's limit to be 0.975v which was a nice drop from the standard 1.35v. Going lower I could get the system to boot @ 0.95v however it would reboot during the stress test.
So now time to see if it could go lower. Leaving the multiplier I dropped the FSB from the standard 333 to 266 giving me a CPU speed of 1.6GHz. I always make a habit of only changing one thing at a time so I booted into windows keeping the vcore @ 0.975 and did a stress test. All was good so now the vcore was dropped to 0.95v and again it was fine. Attempting to drop below 0.95v resulted in the machine not booting even when I set the CPU to 1.2GHz so it appears 0.95v is the minimum this CPU will do.
Benching
The primary reason for this upgrade was I had a 1080p x264 rip that my old Athon A64 3000+ couldn't handle. So it was time to see how the various speeds would handle this video. All settings where tested on the same 3mins of video which included various scenes (fast panning ect)
To measure I used Everest stress test which records the CPU usage and temp. I also had windows task manager open as Everest doesn't show the split between the cores. Unfortunately there was no exact measurements so the figures where taken as a best guess from me reading the graphs. All the graphs are provided below so you can see how I obtained.
System Specs;
Gigabyte DS3P
E6550 w/stock cooling (Fan@1200rpm)
2g Geil DDR2 800 CAS4
Antec 430w NEO
Antec P150
ATI X300 128MB
Graph details;
vcore - The minimum vcore at this speed. The exception to this was the 2333MHz as for this was done at the intel defaults.
Loaded Temp - CPU temp after Everest Stress test. Both cores where run at 100% for 5mins. Highest temp recorded.
Decoding Temp - CPU temp after decoding 3mins of video. Highest temp recorded.
Avg CPU - The average CPU usage during decoding. This is was the most constant CPU load, not a mathematical average using min/max.
Max CPU - The max sustained CPU usage during decoding. Any single spikes where discarded for consistency as the CPU graph is only updated once a second.
Performance
At 1200Mhz while even at this low speed the CPU can manage playback it hitting 100% which leads to some minor gitters, not quite what we want. At 1400MHz the CPU can manage the decode fine, we see a very linear decrease in CPU load as the speed increases.
My goal was to have a CPU that stayed below 80%, this would allow for headroom to background processes ect without causing issues with my playback. Whilst I was able to achieve this with 1600MHz as there wasn't much of a temp difference I settled on 1800MHz for my final speed.
Temp
The ambient temp was ~23c acording to my bedside clock which has thermometer. Not the most accurate instrument but it gives you a reference point. Again we see a very linear temp increase across the board with the exception of our control the default settings for 2333MHz. The 1200MHz CPU is 16c cooler then the stock E6550 during stress test and 12c cooler during decoding. My chosen speed 1800MHz runs 13c cooler during stress and 10c cooler during decoding.
1080p vs 720p
Whilst 1200Mhz was to slow for my needs it shouldn't be ruled out. If your only decoding 720p material it has plenty of grunt. The average for 720p was 40% load with max around 60-70%.
I didn't do any DVD upscaling as I have a PS3 for those duties. Hope this little adventure helps some people with their CPU choice and HTPC design.
Additional Info
Mediaportal 2.3.0 final was used with X-Face 1.3
K-lite 3.6.2 codec pack
ffdshow was left at default for all with the exception of enabling 5.1 pass through for SPDIF
Graphs
Below has screen shots from each of the tests
2333MHz - 1080p decode
2000MHz - 1080p decode
1800MHz - 1080p decode
1600MHz - 1080p decode
1400MHz - 1080p decode
1200MHz - 1080p decode
I had previously looked at the mobile offerings from Intel but at double the price of this CPU I couldn't justify the extra cost.
Finding the minimum vcore
I went straight to 2Ghz for this CPU as that was simply a multi change from 7x to 6x. From here I slowly dropped the vcore then stress tested using Everest for 5mins. After 5mins I dropped the vcore again, rinsed and repeated. Its important here to note that 5mins isn't enough to verify a 100% stable CPU but gives and indication. Once I have found my believed stable setting I always stress test for 12hours.
At 2Ghz I found the CPU's limit to be 0.975v which was a nice drop from the standard 1.35v. Going lower I could get the system to boot @ 0.95v however it would reboot during the stress test.
So now time to see if it could go lower. Leaving the multiplier I dropped the FSB from the standard 333 to 266 giving me a CPU speed of 1.6GHz. I always make a habit of only changing one thing at a time so I booted into windows keeping the vcore @ 0.975 and did a stress test. All was good so now the vcore was dropped to 0.95v and again it was fine. Attempting to drop below 0.95v resulted in the machine not booting even when I set the CPU to 1.2GHz so it appears 0.95v is the minimum this CPU will do.
Benching
The primary reason for this upgrade was I had a 1080p x264 rip that my old Athon A64 3000+ couldn't handle. So it was time to see how the various speeds would handle this video. All settings where tested on the same 3mins of video which included various scenes (fast panning ect)
To measure I used Everest stress test which records the CPU usage and temp. I also had windows task manager open as Everest doesn't show the split between the cores. Unfortunately there was no exact measurements so the figures where taken as a best guess from me reading the graphs. All the graphs are provided below so you can see how I obtained.
System Specs;
Gigabyte DS3P
E6550 w/stock cooling (Fan@1200rpm)
2g Geil DDR2 800 CAS4
Antec 430w NEO
Antec P150
ATI X300 128MB
Graph details;
vcore - The minimum vcore at this speed. The exception to this was the 2333MHz as for this was done at the intel defaults.
Loaded Temp - CPU temp after Everest Stress test. Both cores where run at 100% for 5mins. Highest temp recorded.
Decoding Temp - CPU temp after decoding 3mins of video. Highest temp recorded.
Avg CPU - The average CPU usage during decoding. This is was the most constant CPU load, not a mathematical average using min/max.
Max CPU - The max sustained CPU usage during decoding. Any single spikes where discarded for consistency as the CPU graph is only updated once a second.
Performance
At 1200Mhz while even at this low speed the CPU can manage playback it hitting 100% which leads to some minor gitters, not quite what we want. At 1400MHz the CPU can manage the decode fine, we see a very linear decrease in CPU load as the speed increases.
My goal was to have a CPU that stayed below 80%, this would allow for headroom to background processes ect without causing issues with my playback. Whilst I was able to achieve this with 1600MHz as there wasn't much of a temp difference I settled on 1800MHz for my final speed.
Temp
The ambient temp was ~23c acording to my bedside clock which has thermometer. Not the most accurate instrument but it gives you a reference point. Again we see a very linear temp increase across the board with the exception of our control the default settings for 2333MHz. The 1200MHz CPU is 16c cooler then the stock E6550 during stress test and 12c cooler during decoding. My chosen speed 1800MHz runs 13c cooler during stress and 10c cooler during decoding.
1080p vs 720p
Whilst 1200Mhz was to slow for my needs it shouldn't be ruled out. If your only decoding 720p material it has plenty of grunt. The average for 720p was 40% load with max around 60-70%.
I didn't do any DVD upscaling as I have a PS3 for those duties. Hope this little adventure helps some people with their CPU choice and HTPC design.
Additional Info
Mediaportal 2.3.0 final was used with X-Face 1.3
K-lite 3.6.2 codec pack
ffdshow was left at default for all with the exception of enabling 5.1 pass through for SPDIF
Graphs
Below has screen shots from each of the tests
2333MHz - 1080p decode
2000MHz - 1080p decode
1800MHz - 1080p decode
1600MHz - 1080p decode
1400MHz - 1080p decode
1200MHz - 1080p decode