The Sun Ultrasparc T2 puts pressure on IBM, Intel and AMD to introduce more cores per chip and more threads within each core or to drop prices. Sun have their UltraSPARC T2 in mass production and Web server owners will benefit no matter what price Sun put on complete systems.
The Sun Ultrasparc T2 is a step forward in multiple processing chip design and I will run through a quick history to show you why the T2 beats a Pentium Dual Core.
The first computer chips did one thing at a time which always limited their speed to their clock speed and clock speeds are something that recently hit a natural limit. When you speed up the clock on a computer, you use more electricity until you can switch to thinner conducting lines on the silicon surface. Manufacturers are currently at a limit where the lines on the silicon are so thin that they are unreliable and they cannot be made thinner without switching from light based etching to xray based etching, another technology that is not yet working.
If you cannot run your chip faster, you can make it do two things at the same time. Early computers passed graphics processing out to a graphics chip. The next step was to pass slow floating point calculations out to a separate floating point coprocessor. The floating point coprocessor was moved onto the same chip when there was enough space but the coprocessor operated separately because it operated on a completely different time scale.
Eventually computer processors were full of little coprocessors doing bits of the job. Pentiums have 11, 14, or more little processors performing individual parts of the processing workload. Some Pentiums, and the AMD equivalent, have multiple copies of some little bits so several little bits can be processed in parallel. At one stage AMD processors trailed Intel's processors by a little bit but raced ahead in floating point calculations because AMD had designed a far better floating point component on their processor.
Multiple cores were the next step. Take your current processing core with multiple processing components and replicate the core several times to help process several programs in parallel. The Sun Ultrasparc T2 has 8 cores which puts the T2 ahead of the fastest Pentium dual and quad cores. But the T2 has more.
The T2 processes 8 threads in each core. A thread is something that was used in mainframe computers way back when computers were carved out of wood. Well, it was a long time ago.
What is a thread? Less than a program but enough for a Web page.
Your Web site uses Apache to control the processing. If you use IIS or some other program, switch to Apache. Apache can run each Web page request as a separate task, which is effectively a separate copy of a large chunk of Apache. If one task fails, nothing else fails because they are isolated. Each task can occupy a core.
In Apache thread processing, only a small part of the processing is duplicated for each thread. Each Apache thread can process one Web page provided all threads share similar characteristics. If one thread fails, all similar threads fail. An Apache thread equates to the thread processing in the T2.
If you use task style processing where everything is totally separate, the T2 would work like an 8 core processor and stop there. When you have threading, the T2 acts almost like a 64 core chip because every thread processes a different bit of code.
To use the multiple cores of the T2 or any other multiple core chip, you need only basic code changes. To use the multiple thread feature, you need code that understands how the hardware threads work and can use them to maximum advantage.
Apache version 2 lets you easily replace the internal parts of Apache that handle tasks and threads which means you can easily tune Apache to use the 64 threads of the T2 processor. If you are running any other sort of processing, you may be processing 8 Web pages in 8 cores instead of 64 Web pages in 64 threads.
When 8 is 2
The Sun Ultrasparc T2 has 8 threads per core which might lead you to think the 8 cores could process 64 threads at the same time. In fact the T2 starts only 2 new threads per core per clock cycle because the threads work in part like the components I mentioned earlier. In Apache style threads the T2 only processes 16 threads across the 8 cores.
The difference occurs because the 8 threads in a core are of different types. The T2 starts 2 threads and directs them through threads based on the type of processing. Each thread performs a different type of processing and you really can only get 2 threads running in parallel because a Web page process has to go through several threads across several clock cycles. Those 8 threads by 8 cores give you 16 Apache style threads; 16 Web pages, not 64 Web pages.
Now that you are thinking 16 instead of 64, remember that one of the threads is cryptography running up to 10 times faster than dedicated hardware. If your 16 Web pages use SSL, you might get the whole 16 pages through many times faster than an equivalent system from IBM, Intel, or AMD.
A Sun T2 thread is half way between the full thread processing of competing systems and the individual component processing of the competitors but those multiple cryptography threads makes the T2 a real advantage for sites using a lot of SSL.
Lower Power Consumption
Sun's T2 provides double the processing power compared to Sun's T1, which means more power without burning more carbon to generate electricity. Sun's T2 gives you more processing power per watt of electricity consumed compared to AMD's Opteron.
The power consumption of the processor is only a small part of the overall power consumption but the processor is often the hottest part which means lots of power goes into air conditioning to cool the computer. If you live in a warm or hot climate where you have to cool the computers all year round then the cost of air conditioning is significant. Halving the heat output for the same processing power is a significant saving.
2 * 10Gb
There are two Ethernet connections built into the T2 and both are 10Gb. Not many people can use 10Gb Ethernet connections but for those who can, the two connections make sense. you could have a 10Gb Ethernet connection to the Internet and a similar speed connection to an internal network.
Now we are looking at systems that bridge the intranet and Ethernet. You could use the T2 to check your network traffic for SPAM, viruses, and to cache the requests. The T2 could run your proxy server, antivirus software, DNS, email server, and a whole lot of other things that need one foot in the Internet and the other in your Intranet.
You could also use the T2 as a Web server with one connection to the Internet and the other network connection to a database although the result would be a waste if you cannot optimise your database connection to use the network. You have to make your database requests maximise selectivity instead of reading more than you need then selecting a smaller range of data within your program. Some databases do not provide the required selectivity to use a network connection. Test carefully with real database examples to find if your code and database will be fast enough across a network connection.
The T2 runs at 1.4 GHz which sounds slow next to 3GHz processors. The T2 has 8 processors which immediately gives you the equivalent of 10.2GHz if you can use the whole 8 cores and Apache can use the whole 8 cores. The two new threads per clock cycle per core gives you double the processing speed for Web site style processing which gives you the equivalent of a 20.4GHz processor.
When you multiply in the cryptography speeding up SSL, you could get the equivalent of 200GHz from other processors. Imagine replacing 60 single core Pentiums with one T2.
If you use the Sun Ultrasparc T2, you need the right software to use every single thread. Look at Apache 2 under the latest Solaris and test every part of your Web site on the T2, including the database.
The T2 puts pressure on IBM, Intel and AMD to introduce more cores per chip and more threads within each core. If you cannot make use of the T2, you will be able to use the eventual lower prices for competing machines.