Why split a CPU core into multiple hardware threads? Same reason as always: more power! Now there is another reason. Pricing. Most companies have ignored multiple hardware threads and charged their licensing fees based on core or socket. Assuming they charge anything. So two threads per CPU cuts your price in half, four threads is only 25% and eight is 12.5%. Who offers multiple threads? Well, basically everyone offers Intel's newest chips which allows for two (half price), but who does four or eight? Sun. It looks like it will be years before anyone else does even though Sun has offered four hardware threads since 2005.
Now what is a hardware thread? It's a little extra hardware that allows a core to process multiple software simultaneously or appear to do so. It appears to software that each hardware thread is it's very own CPU (just like cores). There are various ways to implement the feature and some work better on certain workloads than others but there is no single winner. Now if your workload works well with hardware that does 4 or 8 threads (most do) and you pay per core or socket or even system for your software, then wouldn't you like to save 75% to 87.5% on your software? By the way, there are a lot of other attractive features to the systems that support this but they aren't the focus here.
Now if you are buying Oracle, they also give a discount for multiple cores on these Sun systems, 50% discount for the machines with 4 threads and 25% for the machines with 8 threads on top of not charging for the extra threads. That turns out to be 87.5% per thread for the 4 thread machines and 90.625% per thread off for the 8 thread machines. You can also get up to 128 threads in a 1U chassis or a single blade. 256 in a 4U. Now almost 91% less per thread is handy when you have 128 or 256 threads per server. That could be 232 threads for free!

Leave your comment