Microsoft Files For 3 Parallel Processing Patents
theodp writes "Microsoft may have been a Johnny-come-lately when it comes to parallel programming, but that's not stopping the software giant from trying to patent it. This week, the USPTO revealed that Microsoft has three additional parallel-processing patents pending — 1. Partitioning and Repartitioning for Data Parallel Operations, 2. Data Parallel Searching, and 3. Data Parallel Production and Consumption. Informing the USPTO that 'Software programs have been written to run sequentially since the beginning days of software development,' Microsoft adds there's been a '[recent] shift away from sequential execution toward parallel execution.' Before they grant the patents, let's hope the USPTO gets a second opinion on the novelty of Microsoft's parallel-processing patent claims."
I can't imagine anyone making a living off of reading software patents. Every time I read them, I think to myself, "whoever those patent examiners are, they are not getting paid enough." The only way you could enjoy writing those things is if you liked giving people pain, and were dreaming of how much you actually were going to hurt the poor examiner.
After reading through the claims in the third patent, I honestly can't see how it is different than the producer/consumer program I wrote my Junior year. They seem to imply that it might be applied to a database, but I couldn't find where it actually specified it (of course the pain of what I was doing somewhat distracted me). Can anyone else see anything in there that is different?
The first patent looks kind of interesting, inasmuch as it seems like they are applying it to a database, and I know of no database that actually does a single query in parallel, but I'm not sure it would be any more efficient, because there is only one disk. Having two threads isn't going to speed anything up there, and might actually cause the disk to thrash.
Qxe4
I may be wrong, but I believe the article was referring to the fact that parallel processing has been around since before Microsoft existed. Of course, Following the Links and perhaps a little research of your own will provide further insight.
-Troll, Flamebait, and Offtopic are NOT equivalent to disagreement.
Yes but... ;-0
The big question is:
If the three patents are 'processed in parallel' by the USPTO, would that constituate prior art
You'd think that somebody that's light-years ahead when it comes to parallel processing would rule the roost in the Top 500 supercomputer list. I'm sure there's a good explanation, though....just waiting to hear it. :)
[b.belong('us') for b in bases if b.owner() == 'you']
Yeah, this is really just what we need: for somebody to come along and encumber the future of parallel processing with a metric fuckload of patents. Thanks, Microsoft!
[b.belong('us') for b in bases if b.owner() == 'you']
It can be as simple as throwing in "rsh" and sending the task to another system - that's a parallel processing method still in use that predates linux. I suggest the above poster uses google to find out what parallel processing is and look at the many different ways of dividing up the tasks, kicking of the processes and getting some sort of results at the end.
Microsoft are the new kids on the block and their licencing alone makes them a very poor choice for clustering so I haven't heard of any production software that will actually run on the platform. There has to be something because it's been a couple of years now. Does anyone have any good examples?
"Try programming in linux for one day and then throw parallel processing into it. then throw in some data."
Funny, but I do this every day. Say, does Windows support zero-copy Infiniband links? How about MPI performance? How about fire&forget clustered processes?
The USPTO will once again be the laughing stock of the whole IT field if they grant these patents.
"I love my job, but I hate talking to people like you" (Freddie Mercury)
I think the confusion here is that people keep referring to parallel processing in general - which is obviously a very old, and well-explored idea - while the real topic here is automatic parallelization. It's obviously not new either, but so far it has been much less successful. We keep hearing about how pure FP languages such as Haskell would enable it, but, so far, no cigar. And now Microsoft is trying to pull that trick with LINQ and STL.
I think that GP was referring to some stuff that isn't out of beta yet:
Parallel LINQ (for .NET)
Parallel Patterns Library (for native C++)
Obviously, this stuff didn't have a chance to have any significant effect yet, and won't until first stable versions are released.
Rule 1: If I don't patent it, someone else will -- no matter how obvious or trivial.
Rule 2: If someone else patents it -- even if invalid -- and I try to use it, it's off to court for years and years and lots of money.
The game: The one with the most patents wins.
If you don't like the rules, you have two choices.
Choice 1: Don't play the game.
Choice 2: Get the rules changed.
Criticizing Microsoft or anyone else for playing the game by the rules is just whining.
Strange I was just researching MapReduce online when this slashdot posting appeared.
http://www.cs.vu.nl/~ralf/MapReduce/paper.pdf
http://cnx.org/content/m20644/latest/
http://en.wikipedia.org/wiki/MapReduce
http://en.wikipedia.org/wiki/Google_File_System
Patent examiners need to get their heads examined.
Patents, a strange concept anyhow to have a government imposed monopoly. Revoke your governments power to have patents. That should take care of the pesky problem. Prior art helps too.
Well, you gotta give it to Microsoft this time. It seems that these patents are all real and do cover significant innovation and no prior art. What's right is right. When you invent something you have to protect your invention.
After all patents were made to protect the little inventor from big companies, and this is a great example of the patent system working beautifully
Many years ago there was a data storage sytem developed by, I think, ICL, which had a correlator built into the disk data path for each disk arm so that it could search every head of a multi-platter disk at the same. But indexing turned out to be a better method than brute force, so it died. But it was, nonetheless, a highly parallel database search.
Consciousness is an illusion caused by an excess of self consciousness.
You keep hearing, but you not watching? A preview of Data Parallel Haskell is a part of GHC 6.10. I guess they just need more time, people and/or money - the scope of their project seems to be much broader. Oh, and BTW, the `par` operator has been a part of GHC for quite some time. The very idea, though, is much older, and as the link claims, in 1996, a language with these features had been already in use for three years.
Microsoft is only doing here something they are good ate: shrink-wrapping a technology for the average consumer. I would argue that many developers *can* be classified as consumers. While there is nothing inherently bad with this, it is does not exactly made these patent applications right, either.
Ezekiel 23:20
PureMPI is _slow_, it's managed and it can't work with raw links.
Windows does _not_ support process migration, clustering services is a different beast (comparable to JBoss Clustering - http://www.jboss.org/jbossclustering/ ).
Also, Windows has no good clustered filesystems (like OCFS2 in Linux). And no analogs of DRBD.
So you can use Windows for parallel processing, but Linux is almost(?) always better for HPC.
Got problems with the anti trust laws? Don't know how to deal with it? Simple: patent stuff. That way you get a legal monopoly and stifle the competition the easy way.
These kind of patents serve no purpose other than to prevent competing organisations from developing useful goods and services. They hold back innovation and stifle competition.
It is not as though others would not have come up with the same solutions (and most probably had already).
So why would politicians allow this state of affairs to continue? Who is lobbying to keep the patent system the way it is and maybe even extend it? Who benefits? (hint: lawyers and shareholders in large corporations - that is to say people who are already wealthy, trying to make sure they get an even bigger slice of the cake)
Looks like they won't stop until they can patent breathing too. ...Ballmer, don't even think about it, I said it first.
is where the massively parallel applications are at. I regularly write and run parallel code that will efficiently run over thousands of processors - my largest run to date was over 1024, 8 processor nodes, so 8192 processes parallelized. It is all Linux - no exception. I've yet to hear of a respectable production cluster running Windows. In fact, I have yet to run into anybody who isn't running Linux on their desktop, in my line of work. I regularly write and run parallel code - the analysis code for crunching the enormous data sets produced on the clusters - for my quad core desktop machine running Linux. You've no clue.
46 & 2
You tell him! Why, all those truly parallel massive Windows supercomputer system installations just blow those Linux boxes in the top500 away when they're doing real work.
Like... Like... help me out here, I'm lost for an example.
Help stamp out iliturcy.
Google alone must have prior art on just about every single claim in all 3 patents.
Hopefully Google will also have the guts to bash MS over the metaphorical skull with a ton of overlapping patents. That way MS gets their ass handed to them -- by their worst enemy no less -- and meanwhile the patent examiner who was responsible for granting these also gets reassigned to review patents on toilets and PVC pipe.