Multi-Core Chips And Software Licensing 248
i_r_sensitive writes "NetworkWorldFusion has an article on the interaction between multi-core processors and software licensed and charged on a per-processor basis. Interesting to see how/if Oracle and others using this pricing model react. Can multi-core processors put the final nail in per-processor licensing?"
Per Processor -- Per Core (Score:5, Interesting)
Re:I doubt it (Score:5, Interesting)
no, but i bet linux can.
Oracle runs on Linux.
Oracle charges per CPU.
Your point was?
Per processor will never die (Score:2, Interesting)
Buy Robot (Score:4, Interesting)
Alternatives (Score:3, Interesting)
To help envision it, lets say its a firewall - the firewall has no concept of "users" really, it routes packets. (it's not a firewall, but the situation is close enough).
Now our basic question, which we reluctantly answered with per-processor licensing, was how to charge for it.
If you buy our software and your company of 20,000 people is RELYING on it you'd pay more than if your company of 50 people was RELYING on it.
We could have priced into the middle - but then companies under 2,000 people would feel (rightly) ripped off, while the GMs are getting a steal.
Charge per "user behind it"?
Charge by your corporate revenue?
"Pay what you feel is about right"?
On not so minor goal was to be able to make a living for 40 people and continue to develop a product that had, by and large, come up pretty short in the open source arena.
So what models of licensing do you WANT that will keep the vendor and the buyer in business and happy?
(and yes, I've slipped in a 4CPU license for 1-2 CPU price at a place with old, slow machines in use. We tried to do "right".)
Re:I doubt it (Score:5, Interesting)
Perhaps a compromise will result. Eventually a 2CPU license could entirely replace a single CPU license. At such a stage licenses could be bundled as 2CPU, 4CPU, etc. As multicores become the norm, naturally 1CPU licenses should phase out entirely.
This would allow companies to keep their per core licensing scheme. Customers would get the feeling of a deal by getting a muticore license. Perhaps the market would lower the cost of 2CPU license to what a single CPU would be worth.
HT is another matter - architecturally and performance-wise.
Multiple processors, VMWare, and such (Score:4, Interesting)
Also, what if there was a VMWare-like program that simulated a SMP machine? Would that require a multiple CPU license to run Windows? Even if this program that emulated a SMP machine was running on a single CPU?
Re:I doubt it (Score:3, Interesting)
I'm sure higher-end software will charge per physical chip if nothing else.
I am sure that newly licensed software will explicitly state whether it means physical chips or cores, but remember, companies exist to make money. By licensing per core instead of physical chip, they make more money. The software is the same no matter how many chips, only the price varies.
The real issue is how current licenses handle multiple cores per chip. This may wind up in the courts, or licensees may wind up being extorted for extra money they probably do not owe.
Despite being dead, BSD scales well with SMP and runs SMP apps very well, plus it is free. I know what license I will use...
Re:I doubt it (Score:3, Interesting)
Losing money, normally gets a companies attention, that perhaps their customers think that their licensing is getting too expensive for them to consider Oracle.
I havn't looked into database pricing for a long time (ignoring MySql type "free" databases), but from what I remember, Oracle was one of the more expensive ones. Is it so now?
Re:hee hee (Score:1, Interesting)
Re:Alternatives (Score:3, Interesting)
Re:license economics (Score:2, Interesting)
Re:Oracle 9i RAC doesn't charge for HT (Score:4, Interesting)
Oracle Licensing is like mountain weather... if you don't like it, wait 10 minutes and it'll change.
Seriously, though, Oracle changes their licensing more than any other software company I've ever dealt with.
I won't be surprised to see their licensing change after they get some push-back from their customers.
The other thing they DO have a history for, though, is NOT helping customer out when it comes to a license change. I've seen customers sign the deal on a Monday, only to have new pricing come out on the Tuesday. If they'd waited a single day, their software licensing would have been around half of what they paid.
Joy.
MIPS rating (Score:2, Interesting)
This is old news (Score:2, Interesting)
The real issue for software licensing will be when virtualization becomes more widely used in the Risc and Intel space. How will software vendors charge for 2 tenth's of a processor? This will be the real challenge from a cost perspective, as there will be a number of applications that really only require that much of a processor.
Re:what I don't understand is... (Score:3, Interesting)
It does make the RX7 road tax rather cheaper. And I wonder how they'd deal with fuel cell electric cars.
Re:Microsoft still does it by the physical process (Score:1, Interesting)
True, but I doubt that a multi-core chip will be on par with a similar dual-cpu setup, you still need to get the heat away from that single cpu. It's very possible you will only get about the same 15-30% boost in speed you get from HT.
From what I understand multi-core designs [ibm.com] have all cores on a single piece of silicon at the center of the CPU just like uni-core CPUs.
Re:Per Processor -- Per Core (FUD) (Score:3, Interesting)
Oracle was licensing based on power units a while back. Any idea if they are stiill doing that? From what I understand, they basically benchmarked certain machines and price the software based on the performance of the box rather than pure # of CPU's. That solves the issue completely. Course we use MySQL and Postgres anyway, with a smattering of MS SqlServer (Yeah I know, but it IS a pretty good DB, and needed by some apps.)
Re:Oracle 9i RAC doesn't charge for HT (Score:3, Interesting)
Per person pricing (Score:1, Interesting)
Y employees * $X = resulting software cost
Do this on a year over year basis and you have recuring revenue.
Re:Oracle 9i RAC doesn't charge for HT (Score:3, Interesting)
When ecoding video one thread could handle the images and the other the sound.
There are lots of times when a home system could use more than one processor. Most systems already have more than one cpu they just tend to be specialized. The GPU in your video board is one. The DSP in good audio cards is another. I really do not like the idea of dumping more load on the CPU. Things like onboard audio and win modems are what I condsider to be bad ideas.
Re:Alternatives (Score:3, Interesting)
Asking the vendor to open the source about the measurement system and using programs like ethereal or iptraf to compare what is being measured.
It's all about caches (Score:3, Interesting)
While your statement "I can get so many FP and integer units on chip; what's the best way I can feed instructions from any number of threads to maximize their usage?" is mostly correct, it really doesn't fully recognize just how hard the processor works to feed instructions into those execution units. A more accurate description would be: "I can get so many transistors on a chip; what's the best way I can maximize the number of instructions executed (amount of work done), by any number of threads, on those transistors?" Currently the best way is to have a few execution units, and a LOT of cache.
Getting back to your original point, in general, a processor is any number of threads that share an L1 cache. Whether that processor shares execution units with another one is really irrelevent, and probably wouldn't offer the performance benefits necessary to make the added complexity worth it.
There are designs for which this wouldn't apply, but they would be "throughput computing" designs with big, slow L1 caches that have *dismal* uniprocessor performance. With poor uniprocessor performance the "work done" per instruction executed starts to go down, so these designs have their own set of problems.