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."
Maybe this will get rid of licensing models that are 'per cpu'. I've never understood the logic in charging per CPU, anyone care to explain? One computer, one license. Or even better, no licenses.
I could understand a performance based pricing model, but two CPUs which were slower than one really fast costing more in licensing fees never made sense anyway.
good for oss. good.
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....
I had not thought about the problem of virtual servers.
E.g. suppose I have a big-ass mainframe that emulates a few PCs, just to run Excel now and then (for legacy reasons). Once a month, we reconfigure the mainframe just for a batch job, so that some of its resources are used to simulate 10 PCs.
How do you price that? A mainframe license? 10 separate PC licenses? What about the fact that I'm only doing it now and then, and not using it regularly (8-10 hours a day)?
I just wish the article had used the term "price discrimination" -- that really explains it all.
Q: How much does it cost?
A: "How much ya got?"
http://www.thebricktestament.com/the_law/when_to_
comes a time when in business u get rid of the cheap customers and keep the ones that can pay. ur product is good or great and ur service is just the same.....who wants the schmucks who want cheap cheap but want more more.
I've always thought that per box/machine licensing made the most sense. Although, the concurrent user model works well in environments where users float between machines (school computer labs, huge offices, etc). Hence different licensing plans for different scenarios. The whole one license per core thing seems somewhat outdated to my feeble mind...
I'll turn into a supernova and burn up everything. Well I'll turn into a black little hole and you'll turn into string.
Most of the current software do not optimally utilize the multiple cores.
Sure, there is a default performance gain based on the OS itself, but its nowhere near what it can be. Lots of work has to be done for the softwares to fully take advantage of the multiple cores and in such cases you do see a massive improvement in turn around time.
Anyway, even though its a per cpu/core licence , its mostly incremental licensing and not x times per core.
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?
if u never been in business u never paid. u sound like some worker who can't understand that it (usually) "takes money to make money". can i use ur car today....for free?
Microsoft per cpu licenses are considered per socket, not per core. Makes getting a single dual-core cpu preferable to dual single-core cpus.
The software industry has gotten away with robbery for too long. Year over year they astound us with their skyrocketing costs, and as computing complexity goes up, they find more and more excuses to not deliver the support you're paying for. "We cannot support you because of X." X being any reason they can find. Upgrades, new hardware they don't have in their support matrix, virtualization. Whatever the reason, the very first order of business for those support folks when you call for help is to find a reason to not support you. And now they want more money. To pay the outsourced first level support folks that know all about how to determine if you're unsupportable, and nothing about how to support the products.
Ridiculous.
The licensing confusion has already helped open source to become the standard. Our entire company has moved to Linux and replaced all software packages by open source ones including the replacement of Microsoft Word with Openoffice. We have already saved huge amounts in licensing fees and most of our partners and suppliers are also moving to Linux which means even more cost savings and opens the road for better integration.
> Companies still prefer the per-seat one-off license
I understand now why they don't have any seat at my new work: everybody just sit on the floor, in a hippie style...
duh !
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.
Amazing that this is turned into a problem. I've dual processor Macs for years. On the other hand, given the pricing of terrible (buggy and user-unfriendly) software like Adobe Acrobat standard and MS Office, their developers seem to have implemented double pricing as standard, even for single processor machines like laptops.
Bert
Lets make no mistake about this, MS didn't do this because of some enlightened generosity, they did it because Linux is kicking their teeth in over the server space.
... now which side do we think is going to win out over the long term here?
Funny how open source models aren't having any of these licensing "problems". To Linux unrestricted copying on the internet and huge multicore systems are a benefit, to proprietary vendors they are a threat
Licensing an OS on a per CPU basis would have made BlueGene prohibitively expensive.
So it runs Linux.
As for technical support, there are legions of hungry types who will keep your stuff working without your having to deal with the mothership at all.
It is simply unimaginable to pay those huge sums people in America have to pay for software, DVDS or any of that. Overhere, Windows is as free as Linux! Those complex licensing schemes are like something an angry maniac babbles in his cell.
When Oracle or Microsoft gives the US State Department an anal probe or two, the local cops rouse themselves from the whorehouses, languidly wander through the market and seize the stock of the vendors who aren't up on their bribes (which they then sell). Once those fellows have paid up, thy're back in business soon enough (usually the next day.)
Most of the current software do not optimally utilize the multiple cores.
Can you name one piece of software that is licensed per processor/core that is unable to take nearly full advantage of however many processors you have in a machine? I sure can't.
Sure, there is a default performance gain based on the OS itself, but its nowhere near what it can be. Lots of work has to be done for the softwares to fully take advantage of the multiple cores and in such cases you do see a massive improvement in turn around time.
There is plenty of software running in datacenters all over the world that can take full advantage of as many processors as you can put in a box. When you posted your comment you hit a web server running Apache. Apache can spawn as many processes as needed to take advantage of more processors.
As for this licensing issue... It really doesn't matter much to me anyway. I don't personally use much closed source software. Anytime I have used expensive software, it sure wasn't on my dime :p.
novell dropped server licenses. you pay per user, get your first server license in the box that the user license came in and download extra server licenses for free.
5 users and one server costs (software wise) the same as 5 users and 20 servers!
eric
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.
I swear, half the Slashdot stories now are about "new" IT problems that mainframes solved years or decades ago. More people really need to check out how cheap and capable IBM's large servers are now.
Any proper server -- and I guess there are no proper servers besides IBM zSeries -- measure and track what the running software is up to. Otherwise you have security, performance, workload management, and other problems anyway. In the zSeries world that gets translated to MSUs ("Millions of Service Units") via SMF ("Service Management Framework") records. MSUs are a common "horsepower" denominator that has nothing to do with how many chips are inside the server. IBM and most other software vendors let you buy software based on peak MSUs (peak four hour rolling average each month). There's usually a minimum -- 3 MSUs is popular -- so that you don't just lard up your machine with unused software. But otherwise you pay for what you use per software package. (IBM calls that VWLC: Variable Workload License Charge.)
If your sales went up, and you're processing lots of new orders, you pay a little more. If you're a small company and you've hit hard times, you pay less. It generally works. It also has a side benefit of encouraging vendors and developers not to create bloatware. (Efficient and thus scalable code is rewarded.)
Just as one data point, I recently compared the price of WebSphere Business Integration Message Broker for z/OS and for Windows. The z/OS version at 3 MSUs -- all we needed -- was 60% less expensive than a single Windows CPU. And we would have needed at least two Windows CPUs and more like three (redundant production and test).
And you've got open source, too. (zSeries is the biggest and baddest Linux server.) Obviously Linux is quite outside the MSU regime. Commercial Linux software is typically charged by the processor (only if used to run the software), and virtualization (z/VM and LPARs) has absolutely no impact on pricing. IBM doesn't worry about whether you move their commercial software from, say, X86 to zSeries: Linux is Linux for software licensing. This is very cool.
This is so obvious given that databases are benchmarked in transactions per second, one has to wonder if something else is at work. Most likely just simple greed.
Why don't the software companies license by something that they can control? A "number of threads" model would be more fair. Or at least, the license can't assume that all the hardware is there for it to use and profit from.
If I had an 8 processor server running an existing application that I also wanted a low-end DB server on, I could just buy a single thread license instead of an 8 cpu one. Later, if the DB server couldn't handle the load, I could simply upgrade it to a 2 or 3 thread server.
Yeah, the RIAA is pretty pissed about what's happening to their traditional business model too. Look for more of that in the future.
calling gaming a niche market is plain wrong.
Calling 3D Windows gaming a niche market isn't nearly as wrong. Most 3D video games other than perhaps first-person shooters are played on PlayStation 2, GameCube, and Xbox.
What if the OS does the slicing [of a process's threads across cores of CPUs] and the app never sees beyond this?
Then you're charged extra for the version of the application that supports operating systems that lack a Slicing Reflection API.
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"
I remember reading on /. a while back that MS decided that it would treat a dual-core processor as a single processor in licensing its software on a per-processor basis. I thought with MS pretty much dictating what goes in IT, all other vendors would follow suit.
I love capitalism. No really, I love watching people test just how hard they can screw each other in the ass for money without getting shot. Here's how I see it:
Company ABC invests X money into developing product. They estimate sales of Y quantity. Divide X by Y to get a per-item cost, mark it up for profit and a support allowance, then sell it.
The fact that I might run their software on multiple CPU's, or that it might be accessed by Terminal Server, doesn't change a single thing for the developer. They don't need to work harder, they don't lose sleep at night, their kids won't end up on Springer. It doesn't matter whether I use it to index my MP3 files, or run a Fortune-500 business with it. They did their work, and they get paid for that work. What happens afterward is not their problem, and more importantly none of their goddamned business.
When people learn to take just compensation for their efforts, and give up the "fight" for riches, we'll wonder how we ever survived through capitalism. There is a set amount of monetary value in the world, the more you have, the less someone else has, and the more that person is likely to do nasty things to make up for the loss. So why don't you just be happy to eat every day and give me a goddamned break with your license gouging.
-Billco, Fnarg.com
I think if they get too stupid with the costs of licensing, then Open Source software will start to take off even more. Why? It costs me ZERO or close to it to download a iso and run Linux one ANY number if servers or cores. Need support too? No problem. Run Red Hat Enterprise Linux with a support contract or find a company that sells support on a per incident basis. The thing is with all this dual core multiprocessing thing is people want a reasonable all you can eat pricing model. Charging per CPU or even per core is not that model. We'll go away.
Gorkman
Per CPU is done in server modules or anything that does a lot of processing (databases, rendering engines, etc). The idea is that these systems will always have the latest CPUs or close to it, and they are generally large enterprise machines.
Take for example a big enterprise database- you could have 16 single processor machines or one 16-way machine- You get the same use out of it, yet in the traditional model, the view of one machine doesn't work.
The more CPUs, the more processing power, the more movies you can put out, transactions per second you can do, etc. It's a usage model like anything else.
Now they could charge by frame rendered, by transaction, but then how would you compare a complex or simple transaction or video? What you are capable to do, you will utilize.
Also keep in mind, that the more CPUs the deeper the pockets above 2 or so. A small business will have single or dual processor systems, whereas a large provider would spend hundreds of thousands on a vendor-lock-in solution for IBM mainframes and many-way Sun systems. If they're willing to pay more, charge them more! Oracle/Maya/etc want a piece of their latest upgrade, so this is a good way to get it, without being prohibitive to small business.
-M
when you see the word 'Linux', drink!
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.
They whose government reduces their essential liberties for temporary security, receive neither liberty nor security.
ancient history
Even Linux and BSD have licenses...
Linux and BSD have distribution licenses. What they don't have are user licenses.
No license is needed to use BSD or Linux, on as many machines or CPUs or whatever as you desire, unless you count the "no warranty" disclaimers in the distribution licenses as being "user licenses". This seems like a pretty nice model to me, though it may be considered a dangerous line of thinking from the perspective of some people (i.e. Microsoft).
Irritable, left-wing and possibly humorous bumper stickers and t-shirts
You are absolutely right. I was just taking exception to the view that there is a fixed monetary value in the world. It's not true.
> Is it fair that a company with a server that
> has a single processor serving 100 users pays
> the same as a company that has a server with an
> 8-way processor serving 1000 users.
If this was the automtive industry... is it fair that a taxi company running exclusively on SUVs, getting 5 miles/gallon should pay the same gasoline price as a taxi company that runs exclusively on cars that get 60 miles/gallon on the same gasoline?
Me thinks: yes.
Now, if you wish to make a license on a "per customer" basis (bus company pays % of ticket price rather than per gallon), then fine, go ahead. But change the price/gallon based on the performance of my engine? Come on!
Oh yeah, Oracle Power Units. What a ridiculous concept in license pricing.
A computer once beat me at chess, but it was no match for me at kick boxing.
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.
I am in the process of buying a bunch of Sun Hardware. 2900's and 25K's. All with Ultra IV Dual Core processors.
When I was putting together my hardware and software budget I got assurances from both IBM (for Websphere and MQ) and Oracle (9i and partitioning...(yes you actually have to pay for partitioning, per CPU)), that I would continue to pay 'per cpu', not 'per core'. So my 6 CPU 2900's will count as 6 each, not 12.
Same for Veritas for their clustering and disk management software, now that I think about it...it's outragiously expensive software, but still 1 licence per CPU.
So I guess that I'm not really seeing the dual core licensing problem that I've been hearing about... not sure if it's because I work for a huge Mega-Bank with lots of pull with the vendors, or if the vendors genuinely don't want to upset customers in general. Either way it feels right.
A CPU is a CPU. It's not like the dual core gives you 2x performance or anything. It's more like a 30% boost.... It would be like them chanrging more every time a faster processor came out. Which would be ridiculous.
wbs.
Huh?
How does this affect the GPL?? I mean, will dual core processors allow users to "steal" extra usage from the hard working Linux programmers... The horror!!!
That would be a GREAT topic for a slashdot article!!! Let's see a breakdown of IBM's "trophy" systems according to their own licensing models!!!
IBM is KING of per CPU licensing.... Almost all the vendors use some kind of per-cpu fee. What makes it worse is that all of IBMs machines for several years now have used multi-core processors.. often with 4-8 on a "socket" but they've been getting a way with it for a while now!
the whole license scheme is plain silly. and each vendor has his own license model, it just drives people crazy and hard to predict total costs sometimes.
but there are some things that make me even more mad. the cost of the software _increases_ because of factor X, but it is the same freaking software, there is nothing special about agent Y running on machine A or B except the price! Imagin gas stations calculating the price of fuel depending on your average speed on the highway, while giving you the same fuel anyway.
ok, for some reason you manage to live with this, the next thing makes things even worse. a _lot_ of these products have bugs in their license code, so you'll walk into the office one day and all hell broke lose during the night because for some @#!$ reason the program/agent/etc. though you didn't have a certain license anymore. ARGHLK!
The license model is braindead, and so the OSS companies are mostly a little bit more sensible about it and try to make a living by charging for support. But wait! those horrible licensing bastards are charging for support to, and a lot (you know, in case the license code bugs out again and you have to request a new license whatever). Double ripoff, and still companies are putting up with this crap, what is the deal here? you stab me in the back, i'll stab you, we're all stabbing together...
On a long enough timeline, the survival rate for everyone drops to zero.
homo