Dual-core Processors Challenge Licensing Models
ffub writes "Changes in hardware (such as dual-core processors and virtualisation) are making software licensing increasingly difficult for software firms. Companies still prefer the per-seat one-off license, while subscription models are favoured with software firms. But neither model reflects well the way software is used these days. The Economist looks at the situation and briefly touches on how Open Source could benefit from the muddle."
I would bet that the "per CPU" license model dates back to a time when CPU's were much more expensive; it could reasonably be assumed that there would be many users using one CPU. In other words, the business model is a couple of decades behind the technology.
C|N>K
In the early days of the web, I worked on a web-based project which connected to a MS SQL-Server database. The licensing issue was very confusing since the information in the database would be made available to anyone who came to site (and we expected a few hundred regular users), but technically everything would be accessed by through only one account (the webserver!).
I called the local MS office and they confirmed that we only need one licence for this model.
Based on this information, we rewrote a major internal application to be entirely browser based - and then dropped all our seat licences bar one.
Needless to say, MS had a absolute fit!
About a year later we received an incredibly confusing document outlining license-requirements for internet and intranet applications.
--- blackironprison, where ignorance is bliss....
Rendering software is usually licensed per-CPU. It's a decent model since the number of CPUs in a studio roughly indicates how much it can afford to pay for software :). Though it seems likely that "per CPU" will soon become "per box" or "per OS instance" to avoid splitting hairs over the expanding jungle of multiprocessing technologies.
To me, it's like charging the driver of a larger car more to renew his plates, than the owner of a compact car. It doesn't make any sense.
Most states charge based on the value of the car. This makes no sense other than trying to stick it to the rich. If you have a expensive compact car, you could pay more than someone with a inexpensive but larger car.
Charging based on weight makes more sense. The heavier the vehicle the more damage it does to the roadway. Thus larger cars should pay more, they cause more maintance to have to be done to the roads.
I know we have heard about this quite awhile ago on Slashdot, when Oracle wanted to consider a dual core CPU two processors I think companies like Oracle will be forced to think of dual core CPUs as simply one CPU that handles multiple threads well, especially with dual core CPUs not only coming from the Intel side, but also from IBM If I remember correctly Oracle found it difficult to determine the difference between dualcore and two CPUs. In the end, everyone will buy dual core, for the same reason everyone buys LCD monitors (it is seen as better, even if maybe it isn't.) Software companies will be forced to bend, hardware companies won't have to, because consumers are not going to put up with paying twice as much for what appears (on the outside) as one CPU. Should I be charged twice the parking fee because my 2001 Excursion has twice as many cylinders as the car beside it? I don't think so.
Powered by caffeine and sugar; BSD
Are we getting to a point where the term CPU loses its relevance? In gaming, is the power of monitor card selected as important than the speed of the CPU? Does the disk array attached to the database have more impact on speed than CPU? Should these also be factors in license models?
No, it's the other way around; if you have many users on one CPU, charging per CPU makes no sense (unless you charge a lot.) The idea, of course, is for the software company to maximize its revenue, so by charging per CPU for big multiprocessor systems built on cheap commodity processors (which, of course, describes the majority of server setups these days) they can make more money. The justification (other than "we want more money") is that roughly, they expect the number of CPU's to scale with the number of users.
The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
I'm surprised no one is talking about this, as it seems it was all the rage back-in-the-day (and I believe still going today): charge by the cycle for the app.
Case in point: I worked with IBM's MQSeries product as a link between a mainframe and a webserver. The MQSeries license for NT was something like a flat $6000. On the mainframe, however, it was some ungodly amount for the tapes, then they charged a per-cycle fee *and* a monthly maintenance contract.
As part of load testing, I wrote a program that would spit the complete works of shakespeare back and forth, over and over, to the mainframe and back using multiple threads. Two weeks of testing cost the company an extra $12,000 because of the cycles expended.
I noticed too that starting with SQL Server 7.0 that the explain plan feature can also show the number of cycles spent on a particular step. I would think Microsoft, with that info, could, if they wanted, go to a similar model with SQL Server if they so chose (and wanted to effectively kill the product).
And now that I think about it, my Unix account back in the early 90s had a cost associated with it too...I was allotted something like $1000 worth of what I assume was cpu time, and sure enough, enough attempts to get Nethack to compile and I was back in the office begging for more "money".
Ah, the good old days. I think.
Per CPU licensing makes no sense anyway. It gives no indication how heavily an application is used, or how important it is to a business. For databases, it would make more sense to have a license for X thousand transactions, or Y amount of data. After all, databases are used for doing transactions and storing data. (Don't let Oracle get wind of this idea though, I've got an Oracle database that's more than 1GB in size but compresses down to 30MB! This pricing model will be the ideal excuse for them to take up even more disk space..)
The reason licenses are tied to hardware or to seats is probably because it's easy to justify these as a "cost of doing business" to suits. While projects usually have the greatest difficulty getting an OK for money to go towards programmers, expensive hardware is purchased willy-nilly, on the basis of "well, now we've got this application, we need to run it, or else the money we spent on programming it is wasted!". So tying your database license to CPUs makes more of an afterthought. (Just like performance, scaleability and actual volumes are an afterthought).
The same goes for seats; you just HAVE to license one copy of Microsoft Office or an OS or a database for every employee, otherwise you're paying (some) employees for basically standing around! Then, to recover costs, you make sure they have very little access to things like notepads, pens, or copying machines, since those dimes add up, don't you know?
Call me a cynical bastard if you will..
SCO employee? Check out the bounty
All this, as I see it, is a pure waste of scarce resources. It is somewhat alleviated by sitewide licensing of a few products, but even these are not easy to administer. The whole scene is like the U.S. medical or tax system -- value is being delivered, but the administrative overhead is huge. All the costs of compliance are passed on to the end users and institutions.
What a difference with Linux and OSS! Easy licensing is a big plus and it's not well enough appreciated.
Fiat Lux.
Until quite recently, our database software was on power unit licences. A formula number of CPUs x MHz x architecture is used to work out how much it will cost you to run the database. Why? Well they want people who are running huge databases to pay more, and size of server(s) is a pretty good measure, Amazon isn't going to run on a single CPU. That is, they charge as much as they think the customer can afford.
While an interesting question, how does this question manage to rate as a "insightful"?
Xix.
"Everything is adjustable, provided you have the right tools"
Linux, the open-source operating system for Pentium-style processors
Did anyone else notice that line and do a doubletake? I parse that sentence as implying that Linux is only for Pentium-style processors.
In college, for a chemistry class, the textbook included some a CD-ROM with some java software that we were supposed to use at home for our homework (or in a provided computer lab for the less fortunate). Anyway, I couldn't legally run it at home, because the shrink-wrap EULA prohibited running it on more than one CPU ...As my home system was a SMP athlon system (an affordable one too, using the XP-to-MP trick), I could not legally run it at home! What was even funnier was that when I mentioned this to the professor, he seemed terribly suprised that I actually read the EULAs. I suppose that most people don't, which you would think would strongly challenge their enforcability, but alas.
---
the pen is mightier than the sword, the sword is mightier than the court, the court is mightier than the pen.