The right and wrong places to use Sun’s “T” servers
Sun uses three CPUs as the basis for its products: SPARC VI and VII, SPARC T1 and T2, and x86. Choosing the best CPU, in the best system, to solve a problem is more challenging the more choices there are. Frequently, I’ll be asked to recommend a best-fit solution. Sometimes, I’ll need to debug the performance of a system to determine where its bottlenecks are and if it is the best-fit for the workload. Frequently the “T” CPUs are used in the wrong environment, causing users and sysadmins to be unhappy with the provided performance.
In this blog entry I’ll talk about how to determine whether a given workload will run well on Sun’s T servers (the servers that use the T CPUs).
The T servers have one to four sockets. Each socket holds a CPU with up to eight cores. The CPUs currently range up to 1.4GHZ in clock rate. Each core can have eight “hot” threads, in that eight threads can be making progress on the CPU without the system performing a context switch. However, there are not 8 computation engines per core. Rather, each of the eight threads is round-robin scheduled on the core. For details of the architecture of the Niagara CPUs take a look at the Sun Niagara page. An architecture diagram of a single socket of Niagara II CPU is shown here for easy reference.
These T system CPUs are more than just integer units, adding to the expectations of stellar functionality. Each chip also includes eight cryptographic accelerators and eight floating point units, in some configurations the systems also have dual 10-Gb ethernet ports. Finally, Logical Domains, or LDOMS, are an included virtualization technology that allows at the maximum a virtual machine per thread. The T systems have won many benchmarking records, including world record single socket SPEC integer and floating point benchmarks. So what could go wrong?
Read more…
