If you’ve got a computer built around AMD’s Opteron 6100 series processors and are thinking about upgrading to the newer 6200 series processors with their new Bulldozer cores, here’s some information that may be of help. Usually such upgrades are relatively easy, but there are a few things you need to check before hand — particularly the BIOS version.
I recently upgraded a PC running Ubuntu 11.10 on a ASUS KGPE-D16 motherboard with an Opteron 6128 processor to use a newer Opteron 6274. Most recent OS versions, including Windows 7, can run on the 6200 series processors without requiring a change in configuration or software. But before you go through the whole process, double-check that the OS you have installed does have support for the new processors.
Even when the OS supports the new processor, it may not be optimized for it yet. For instance, Windows 8 is expected to make better use of the dual-core pairs by using different scheduling algorithms than Windows 7 does. So there’s likely some room for improvement as software vendors get their code tuned up for the architectural changes in AMD’s latest processors.
Picking A New AMD Socket G34 CPU
There is a wide variety of 6200 series CPUs. Basically you need to keep in mind four things:
- Power consumption
- Core count
- Clock speed
Selecting a processor is a game of trade-offs that depends in large part upon how you use your computer and what you can afford. Absent specific information on your needs and budget, I’d suggest the AMD Opteron 6272 is a good compromise between all the tradeoffs as you can get them in the mid $500 range from SuperBiiz, they should work on pretty much any G34 socket motherboard as they max out at 115W power draw, and the 2.1 GHz cores are still reasonably fast for single threaded or lightly threaded software plus with 16 cores you will be able to get some great multitasking. Others seem to be agreeing as I’ve noticed the 6272 is often sold out more quickly than other 6200 family chips. If that happens, then the 6274 is a good alternative.
But if you’re running only a couple programs that cannot exploit more than about four threads well (many games, old versions of Adobe Photoshop, etc. come to mind), you might be better off with a processor with lower core count and higher clock speed.
If you’re on a tight budget, the AMD Opteron 6212 in the high $200 range is a good choice and will probably perform a bit better than the older AMD Opteron 6128 for most kinds of applications for just slightly more money than roughly $250 that the older Opteron 6128 costs these days.
If you want the absolute fastest G34 processor, be prepared to spend around $1100 for the 6282 SE with its 16 cores running at 2.6 GHz gobbling up 140W maximum power. Some G34 motherboards may not support this processor because of its higher power draw. Others may require a CPU cooler upgrade to handle the higher power dissipation.
Verify You Have Recent BIOS, Upgrade If Necessary
The first thing you need to do to your computer to get ready for the upgrade is to make sure the BIOS on the motherboard supports the newer processors. Reboot the PC and check that the BIOS version is 2005 or newer. If you have an older BIOS such as version 0902 or earlier, you have to upgrade the BIOS to 2005 or 2006 to use the 6200 series processors. To upgrade, download the latest BIOS from the ASUS KGPE-D16 motherboard download site, then extract the BIOS from the ZIP file and then copy it to a USB flash drive. Put the USB flash drive into one of the USB connectors on the PC and then reboot and enter the BIOS setup. Use the Tools menu to select the flash BIOS option and then upgrade the BIOS by picking the right file on the USB flash drive.
UPDATE April 21, 2012: ASUS has released a BIOS update version 2202 as of April 20, 2012 that enables the S3 sleep mode that was broken in the 2005 and 2006 BIOS versions.
If you’re using another motherboard such as from Tyan or Supermicro, similar directions should apply but the BIOS versions and download locations are obviously different than from ASUS.
When buying a new G34 socket motherboard, if you don’t already have a 6100 series processor then you should ask your vendor to verify that the boards have a recent BIOS that supports the 6200 series processors. Otherwise, you are going to have to get your hands on a 6100 series processor to boot the board to be able to upgrade the BIOS. For people buying the ASUS KGPE-D16 motherboards last year, this was certainly a problem for some people at least through December 2011. But as of January 2012, it appears that new motherboards sold through vendors doing some volume of sales do have at least the required 2005 BIOS version.
Replacing the CPU
Next I did the following steps to replace the CPU:
- Shut down the computer and turn it off at the power supply
- Pop the computer case top
- Unclip the two fans on the Noctua NH-U9DO processor cooler
- Unscrew the NH-U9DO from the mounting point on top of the processor
- Set the NH-U9DO aside where it won’t get thermal transfer compound on anything else
- Scrape any excess thermal transfer compound off the metal CPU hold down bracket using a small screw driver
- Pop the release lever on the CPU and removed the Opteron 6128, setting it aside in a safe place
- Open up the Opteron 6274 box and place the chip in its socket, matching the positioning triangle on the chip with the triangle on the socket
- Place the excess thermal compound on the top of the 6274 (the Noctua compound does not harden unlike others do) and squirt a little more on it
- Put the Noctua cooler back on top of the processor (if you are using a NEW cooler, be sure to remove the plastic protective shield or else you may subject your CPU to 60+ degree Celsius temperatures even just by booting in the BIOS!)
- First press down the CPU cooler to spread the thermal transfer compound some, then fully screw it into place
- Clip the fans to the cooler, double-checking the airflow direction so that both fans are blowing the same direction (this is noted by little directional arrows on the fans)
- Visually recheck everything to be sure the fans are plugged in and everything looks OK
- Turn on the computer, check that the CPU fans are running. If not, turn off the computer immediately and correct the fan problem.
- Boot into the BIOS, usually you have to press DEL to select BIOS setup.
- In the BIOS, check the CPU temperature. If everything is OK, you should be seeing temperatures no higher than around 30 degree Celsius even in a comfortably warm room. (Generally I’m seeing temperatures in the 20s depending upon load and room temperature.)
- If you saw temperatures much higher than about 30 degrees C, then shut off the computer and go back to step 3 and recheck the thermal transfer compound is OK by again removing the heat sink and verifying that it spread OK. Then follow the rest of the steps again except obviously don’t change out the CPU again.
- If everything checked out, you can reinstall the case cover and then run longer with a regular software load while watching the CPU temperatures a bit more to verify that all is OK.
Performance and Power Comparison
For typical software that makes use mostly of integer instructions and only lightly uses floating point, the 6272 and 6274 are around twice as fast as the 6128. This is shown by the PassMark CPU testing chart for high-end CPUs where the 6272 is rated at 10,254 and the 6128 is rated at 5105.
Software that uses a lot of floating point instructions may not get as big of a speed boost, particularly if it has not been recompiled with a compiler that optimizes for Bulldozer’s new FPU architecure. One point of discussion about the new Bulldozer processors cores in the 6200 is that each pair of CPU cores shares a FPU. In the 6100 series, each core had its own FPU. The new 6200 FPUs are supposed to be considerably more capable with new 256-bit floating point instruction support and ability to split into executing two 128-bit floating point instructions streams, however fully utilizing these new abilities requires rebuilding code with a new compiler that optimizes for this architecture. If you’re writing your own software, that may be something you can do easily. If not, you may be stuck with older software that is not optimized for the 6200 series processors and will not run as fast as it could. It’s my opinion that this is what causes some of the gap between expected around 100% increase and observed around 67% increase in performance seen in some of the testing done below.
The following is a quick comparison on the performance and power usage between the computer with the 6128 processor and the upgraded version with the 6274. In general, the 6274 draws slightly less power than the 6128 at idle and slightly more at load. Performance goes up mainly due to being able to use more cores. If your typical software mix cannot make use of a lot of cores, you might be better off picking a chip like the 6212 that runs fewer cores at higher speeds.
The particular computer I did this upgrade on has a total of 9 hard disk drives running inside of it along with a AMD/ATI Radeon 6870 graphics card, 32GB of DDR3 ECC 1333MHz memory (four DIMMs), a PC Power and Cooling Silencer 950W Mk2 power supply, a HighPoint USB 3.0 four port RocketU 1144A card, an ASUS PIKE 2008 RAID controller, an ASUS MIO-888 audio card, and a LG WH12LS30 Blu-ray optical drive.
Power monitoring was done by visually watching a Kill-A-Watt power meter into which the computer power supply was the only device plugged in. My guess is there’s about a 1% to 2% margin of error on these measurements between the limitations of the meter and me watching it manually. Of note, I also tried monitoring the power usage with the power meter on a UPS backup but that didn’t seem as consistent.
With the main power off, this computer draws about 5 watts with the IPMI 2.0 hardware (ASUS ASMB4-iKVM) running with either processor. Given that the processors are turned off, that makes sense.
After the BIOS spins up the disks, with the 6128 it draws about 212W and with the 6274 about 210W.
After booting Ubuntu 11.10 and logging in with nothing else running but the OS, the 6128 version draws about 247W and the 6274 about 235W to 238W. What I noticed is that the power draw on the 6274 varies more than I saw when monitoring the 6128.
For software to put load on the CPUs and get some understanding of power consumption and performance differences, I picked the MPrime stress tester and a second program called systester. I monitored these with the Ubuntu System Monitor utility to verify that the expected number of processor cores were at running at 100% load.
For MPrime, I used version 2.66 built as a 64-bit version. I used the torture test, blend model, with 8 threads and for the 6128 saw power usage vary from about 353W to 356W. On the 6274, it varied from about 363W to 365W. But of course this wasn’t fully loaded on the 6274. When I ran it again with 16 threads then the power usage was about 371W to 379W. This program does a good job of burn-in exercising of processors, motherboard, and RAM to verify that everything is working right, so you might want to use it to stress-test a new or upgraded computer for a few hours to a day before putting it into production use.
For systester, I used version 1.4.0 built for x86_64 set to compute Pi to 16 million digits. It’s my understanding that this program using a lot of floating point math which is reputed to be one of the weaker points of the 6200 series processors because a single FPU is shared between pairs of cores whereas on the 6100 series each core had its own FPU.
Here’s a table of the results:
|Power (Watts)||Runtime (Seconds)|
|Threads||Opteron 6128||Opteron 6274||Opteron 6128||Opteron 6274||% Change|
|1||282 – 295||283 – 305||205||192||-6%|
|2||295 – 313||294 – 324||215||212||-1%|
|8||338 – 341||300 – 364||344||297||-14%|
|16||336 – 345||326 – 367||648||445||-31%|
|32||338 – 345||327 – 370||1319||869||-34%|
The performance boost shown in the systester output is about a 67% speed bump from the 6128 when all cores are heavily loaded. As shown by the one thread test, each individual core is slightly faster. Each pair of cores on the two thread test seems to be about the same speed. In general on this test, the more threads you have running, the bigger the performance boost.
Overall, upgrading from a 6128 to a 6274 gets you a significant jump in CPU performance with a small bump in power usage at load. Even if you’re just using your computer for typical desktop applications, I think you’ll notice that the additional cores do improve the multitasking performance.
One downside to the jump to the 6200 series processors at the moment is that ASUS disabled the S3 sleep mode in its BIOS versions supporting the 6200 processors reportedly due to related a bug in BIOS code provided by AMD. If you depend upon power-on-suspend to enable quick resume of your work at the start of a workday, realize that the S1 sleep mode that remains is not as power efficient because possibly the only thing it shuts down is the processor cores and maybe hard disk drives depending upon how you have those configured for power management. Hopefully this will be fixed in a future BIOS release.
On a 6128, what I’ve noticed for typical (i.e., not benchmark or stress test) use is that you seldom see more than a couple of cores running at 100% but you often do see every one of the cores being used for extended periods of time. With similar workload on the 6274, you very seldom see 100% load on any core and you do see usually one or two cores running at 0% plus a few more at less than 10%. The computer running with the 6274 should be able to take on some more work without much impact on other tasks already running.
Adding A Second CPU
Adding a second CPU is much like the steps above, but you don’t have to remove an existing CPU and watch out for the thermal transfer compound mess on it. If you need another CPU cooler, I’ve found that usually the least expensive source for the Noctua NH-U9DO A3 is AlwaysLowest. Usually they are around $46 per CPU cooler, but they do charge for shipping. Amazon is sometimes competitive with this, but Newegg is usually considerably more expensive.