The news of impending dual-core chips is an exciting one, raising as it does the prospect of doing more jobs faster, better and eventually even cheaper than before.
Intel this week raised the lid on its dual-core P4 which is now slated to ship in the first half of 2005. Dual-core Itaniums will follow, with multi-core chips not far behind. AMD has similar plans. And the Cell processor, which will form the heart of the Playstation 3, not to mention IBM workstations and even supercomputers, looks like it will have no fewer than nine cores – eight to carry out jobs in parallel, for PS3 games and weather analysis alike, and one to rule and coordinate them all.
Gamers will be happy. Supercomputing scientists will be happy. But regular business buyers are likely -- unless the software vendors sort their act out -- to be utterly confused, and quite possibly out of pocket too.
The reason is that few software vendors, many of whom currently sell licences on the basis of how many processors a computer -- typically a server -- has, have managed to come to terms with the fact that they are going to have to change their licensing model, and they could end up the losers.
The issue is all the more interesting because the hardware vendors are largely on the side of the users in this one; they want cheaper software licences, otherwise who will buy their new servers?
HP already ran up against this one thanks to the curtly-named MX2 board, which allows two Itanium processors to fit into one Itanium socket. When customers put these boards inside a couple of low-end HP Itanium2 servers, they suddenly found that their Microsoft Windows Server 2003 Enterprise Edition cost more than the server. HP lobbied Microsoft to cut the price, and was successful. We understand it is still lobbying Microsoft -- together with other software vendors such as Oracle -- over multi-core licensing issues.
The issue will be further confused by the multitude of definitions. We all know what a socket is, but the problem of defining just what is a CPU, or a core for that matter, is going to mix it up. Then we have multithreading -- just what does that mean in terms of the operating system and licensing? Or sub-CPU partitions? If you have two partitions sharing a single CPU, how do software licensing models work then? If there are two applications, or even two instance of the same application, sharing a single CPU, do you have to pay for two licences?
As we continue to get excited by the forthcoming hardware, we should pay attention to the software issues, and start asking some difficult questions of those software vendors who still don’t have a single, clear, answer.