Forgot your password?
typodupeerror
Patents Microsoft Software

Microsoft Files For 3 Parallel Processing Patents 137

Posted by timothy
from the three-easy-pieces dept.
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."
This discussion has been archived. No new comments can be posted.

Microsoft Files For 3 Parallel Processing Patents

Comments Filter:
  • by phantomfive (622387) on Sunday June 07, 2009 @05:21AM (#28240015) Journal
    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.
    • Re: (Score:2, Funny)

      maybe james joyce was a patent examiner
      • For those of you who didn't pay attention in your 4000 level lit classes...

        A brief selection from Finnegan's Wake by James Joyce. Arguably the most complex novel in the English language.

        http://finwake.com/1024chapter1/1024finn1.htm

        • Re: (Score:1, Funny)

          by Anonymous Coward
          This is Slashdot.

          1) We rarely read the articles here.
          2) We sometimes read the summaries.
          3) Heck we often don't even read or understand the posts we reply to (or moderate)!

          So a link to the most complex novel in the English language is wasted on us.
        • by wisty (1335733)

          Would I be the first person to say "that's so purple it's ultraviolet!"?

        • by Mikkeles (698461)

          Yes, if you liked it, it's the APL of literature; if you didn't, it's the perl.

        • by ebuck (585470)

          You can argue it's the most complex novel in the English language, I will immediately concede. I was always curious about Finnegan's Wake (but never curious enough to search for a copy).

          This stuff makes Chaucer (in the original Middle-English) look like a piece of cake. I could understand the first sentence without my English subsystem crashing. Midway through the second sentence the semantic parser was throwing exceptions every third word. By the end of the second sentence even my grammar parser had du

    • by shutdown -p now (807394) on Sunday June 07, 2009 @06:26AM (#28240203) Journal

      The first patent looks kind of interesting, inasmuch as it seems like they are applying it to a database

      I don't think so. From reading the claims, it seems to be quite obviously a patent for Parallel LINQ [microsoft.com] to me - it specifically covers all LINQ operators one by one. And PLINQ isn't for databases - it's for in-memory data. Essentially, it's just map/filter/fold/join on arbitrary sequences with automatic parallelization.

      Though I don't see why it wouldn't be just as applicable to databases (which are, after all, just advanced implementations of the above).

      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.

      Records aren't read from disk one-by-one - they are usually read in pages, and once in-memory, it's obviously faster to e.g. filter rows in parallel on as many cores as there are available. Doing it for a simple SELECT .. WHERE .. is trivial. The trick is to get it right for operations involving joins, grouping, and ordering, with arbitrary sequencing and possibly nesting. Which, if I understood correctly, is what the patent is about.

      Anyway, for a shared-use RDBMS, it might be moot, because it usually has more than one query to process at any given time - and so it's easy to load-balance all cores just by assigning queries to them.

      • by uid7306m (830787)

        Anyway, for a shared-use RDBMS, it might be moot, because it usually has more than one query to process at any given time - and so it's easy to load-balance all cores just by assigning queries to them.

        Ha! Not so! Load balancing like that means the response time is long. Long response times do eventually add up, especially if you are combining data from many database servers, like in a web mash-up.

        Ideally, if you could do the queries really fast, and work at only one query at a time with all processors, everyone would be happier.

        • by rbanffy (584143)

          If there is any overhead in parallelizing stuff, the overhead will quickly add up. All your queries will end-up being slower, not because they don't use all available cores, but because they will have to wait to start because of lack of free cores.

          It's a balancing issue.

      • Re: (Score:1, Informative)

        by Anonymous Coward

        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.

        Many Databases (Teradata, DB2, Oracle and even Microsoft - leaving out startups like Greenplum, AsterData etc.) have parallel queries to allow execution of a single query by many processes/threads simultaneously. Research on this began in the 80s (DeWitt's Gamma for e.g.) so there are many well understood techniques. And really, saying databases only have one disk is a little bit of a stretch. Many (maybe most) commercial database implementations will use many disks for a single database

      • by wisty (1335733)

        Wait, isn't that just MapReduce?

        • Wait, isn't that just MapReduce?

          No. With MapReduce, you only have two operators - "map" and "reduce" (i.e. "fold"). Shape of data is also very explicit (with keys), and there is an implicit grouping operation in the middle. In short, MapReduce describes a very specific sequence of operations that is designed to be easy to parallelize while covering a lot of ground. Google's sauce there isn't in the magic parallel query optimizer, but in the software that actually runs parts of your query on different machines, with load balancing and fail

    • Parallel database (Score:3, Interesting)

      by AlecC (512609)

      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.

    • 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."

      Einstein was so bored when he was at the patent office that he did some thought experiments there.

      We all know what he found while bored...

    • by KeithJM (1024071) on Sunday June 07, 2009 @08:12AM (#28240577) Homepage

      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

      There is more than one disk. Remember we're not running databases on your laptop. The first time I saw one table spread out over multiple disks it was an Informix database and the feature was called Fragmentation. I believe SQL Server calls it sharding. Once you do that, it's easy enough to do your queries in parallel. Informix not only let you roughly configure how many threads and how much memory to use for parallel queries, but it did all of this over 10 years ago. Here's a link to the relevant documation: http://docs.rinet.ru/InforSmes/ch20/ch20.htm#Heading4 [rinet.ru]

      • by symbolset (646467)

        Also, the terabyte PCIe attached SSD's are in the market now. If you RAID them you get over 1000 MB/s throughput and latencies around 100 microseconds, in volumes as large as 6TB or more. With reasonable progress from here it's easy to see that disk speed is about to go away as a database design constraint.

    • by Anne Thwacks (531696) on Sunday June 07, 2009 @08:14AM (#28240593)
      The UK's CARDS (Content Addressable Relational Data Store) database engine, on which I worked in the 1980s, did this kind of stuff (Using RAID, though we didnt call it that at the time). Data was retrieved from multiple HDs using an array of Transputers, managed by a workstation that was similar to Sun workstations of the day (double-extended triple Eurocard with Motorola 68020 processor and Unix). Data relationships described graphically (like the stuff in Access, but more powerful).

      So its not, like, a novel invention or anything. Please can I have a patent on "a round device for rolling heavy loads along paved areas". Thanks.

    • Re: (Score:1, Interesting)

      by Anonymous Coward

      MS SQL server has, since at least V7 (sql server 7) a parallel query facility, called Intra-Query Parallelisation. It is supposed to exploit extra cores for a single query.
      It is buggy. In Sql server 7 it regularly deadlocked against itself, in sql server 2000 it actually could run slower than using a single core both wall-clock time and total cpu time, and sometimes much worse things happened under heavy load.
      Disable it. You can do this from enterprise manager.

    • by Dachannien (617929) on Sunday June 07, 2009 @09:48AM (#28240967)

      The pay is fairly competitive (as government jobs go, at least) with industry jobs. Starting salaries are close to average, ranging from $50k to $70k, depending on your incoming level of experience/education, although you do have to live in the DC-VA-MD area, which can be fairly expensive (though not as bad as Manhattan or Silicon Valley, for instance). If you stay long enough, you can hit the federal salary cap (about $150k). It's also tough to beat government bennies. The question is whether you like the work and can deal with the production environment.

      Examiners are responsible to get a certain number of "counts" per pay period. You get a count by sending out a first Office action for an application (on the merits - there are certain Office actions which don't count for this). You also get a count when an application is disposed of (abandoned, allowed, upon writing an Examiner's Answer when the applicant is appealing your decision, or upon the applicant filing a Request for Continued Examination).

      The problem is that there are Office actions that don't earn you counts, but that still require a decent amount of work. Your second Office action on a case doesn't earn you a count, and if you screwed up the first one, you may not be able to make the second one "final" (after final, if you did your Office action correctly, the applicant is only able to appeal or file an RCE, so you usually get a count after a final action within 3 to 6 months).

      What this amounts to is a fairly grueling workplace starting at about six months (once your "basic" training is mostly complete) to about 1.5 to 2 years, because in the interim, you're doing a lot of Office actions that don't earn you any counts yet. Once your pipeline gets full, i.e., all those extra actions you sent out are finally netting you some disposal counts, the workload tapers off, and if you're good at the job, you'll pretty much sail through and get your promotions and bonuses easily at that point. But in the meantime, you'll probably be working a lot of unpaid overtime to make production.

      The production system is why the turnover at the USPTO is so high. Most examiners who leave cite it as the biggest factor in their decision to quit. Not coincidentally, most examiners leave within their first two years. If it were fun like programming games or something, then people would probably grin and bear it, but it's kind of not. You'll learn a lot about the technology (or "art") you're examining in, but most of this learning will come from searching the prior art rather than from reading the applications you're examining, because attorneys (most of whom have a basic science or engineering background) write most of these things (and frequently, they are mediocre translations from Japanese or Korean), and the legal aspects make the obfuscations practiced by the attorneys into an artform.

      Still, some people like it, and they stay at the USPTO until they retire. I haven't figured out why yet.

    • by rbanffy (584143)

      IBM had hard disks in their mainframe computers that had more than one head assembly. I am not sure if they could read or write to the same surfaces or were just assembled in a way one head acted on one surface only but it is easy to imagine a high-performance drive with more than one set of heads that can travel independently.

      And if your database server has only one drive one one controller, you are not really serious about it.

    • by chudnall (514856)
      At least they filed the patents in parallel.
    • All I can say is, anyone who calls Microsoft Johnny-Come-Lately on parallelism is severely ignorant of the subject. Especially wheen your link for the phrase goes to PLINQ, implying that this was their first effort in the world of concurrency and parallelism.

      Compare Microsoft's I/O Completion Ports mechanism (involving both the scheduler and the event driven I/O architecture) and the fact that epoll() itself was the Johnny-Come-Lately technology, or the C10K problem was solved on IIS thanks to I/O Completi

    • >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.

      Hm, you obivously never heard of either Teradata or DB/2? I worked as a Teradata DBA as early as 1988
      (version 2.0 of the Teradata Operating Syst

  • pffff (Score:1, Insightful)

    by Bafoon (1191427)
    Johnny-come-lately? Compared to what others have done in the fields of parallel processing in terms of programming...they are light years ahead. Try programming in linux for one day and then throw parallel processing into it. then throw in some data. then tell me who the "Johnny-come-lately" is.
    • Re: (Score:1, Offtopic)

      by MrMr (219533)
      You are.
      Second post trolling is really old.
    • by kestasjk (933987) *
      Mod parent up. MS definelty jumped on parallel processing early
      • by dbIII (701233)
        Sorry to point out your ignorance or sarcasm but parallel processing not only predates Microsoft but unix as well. One of the methods I use to distribute jobs (pbs - new version is called torque) was developed by NASA long before Windows95 came on the scene.
        • Re:pffff (Score:5, Insightful)

          by shutdown -p now (807394) on Sunday June 07, 2009 @06:30AM (#28240217) Journal

          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.

          • by Rockoon (1252108)
            ..and they will do it too, or else Intel will eat their lunch in the compiler arena.

            Intel's compiler already does some automatic SIMD, and you can be sure that it will be ready for Larrabee.
            • and they will do it too, or else Intel will eat their lunch in the compiler arena.

              Intel's compiler already does some automatic SIMD

              It's an interesting question. I know ICC can parallelize array loops; but can it, for example, handle the same for iteration over an arbitrary STL container?

              • by Rockoon (1252108)
                I don't think it does.. and I also don't think it would even if it could. It would surely be less performant.

                The SIMD instruction sets (MMX, SSEx) arent made for stuff that requires random/arbitrary memory access. For instance, an array of pointers is just about useless from an SSE standpoint since it cannot load the data they point to. If you wanted to increment every pointer in the array then thats a good job for SIMD, but if you want to process what they point to, thats not.

                Even with its automatic ve
          • Re:pffff (Score:4, Informative)

            by K. S. Kyosuke (729550) on Sunday June 07, 2009 @08:05AM (#28240533)

            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 [cmu.edu], 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.

          • Re: (Score:1, Troll)

            by MrMr (219533)
            Mips compilers came with the APO options since the late 1990's. As usual Microsoft is 'inventing' 10 year old technology, and patenting it.
            • Mips compilers came with the APO options since the late 1990's. As usual Microsoft is 'inventing' 10 year old technology, and patenting it.

              How far did their API go? Could it only do the same OMP does with explicit annotation (i.e. simple for-loops for vector and matrix operations, and such)? Or could it really handle code analogous to an SQL query (including nested queries, inner and outer joins, grouping, and sorting) over arbitrary sequences with generalized access interface?

              The patent is not generically for automated parallelization - it is for some specific applications of it. It may still be too generic, or have prior art - I'm not a pate

              • by MrMr (219533)
                No API: We're talking really automatic parallelization. The optimizer detects loops and indepemdent blocks and unrolls them across multiple cpu's.
                Obviously we did this manually with the PVM,OMP and MPI api's years before that, but these compilers were pretty impressive.
          • by PsychicX (866028)
            Additionally, please remember that in a patent, the abstract is not what is being patented. The abstract just provides the rough background for the actual patented invention, which is why it always sounds familiar.
        • Well, actually, unix [wikipedia.org] definitely predates pbs [wikipedia.org] (developed in the early to mid 1990s) by about 30 years.
          • Multics predates unix and had some parallel processing features but I don't think anyone uses it anymore. Pbs as mentioned above predates windows95 and is still used with a version of commercial geophysical software released last year.
    • Re: (Score:1, Informative)

      by Anonymous Coward

      Try programming in linux for one day and then throw parallel processing into it.

      Linux isn't a programming language. And if you think Microsfot is "light years" ahead of everyone else, you're severely misinformed.

    • Re: (Score:2, Informative)

      by Hillview (1113491) *
      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 [teradata.com] and perhaps a little research of your own [vt.edu] will provide further insight.
      • Re: (Score:3, Informative)

        I think that GP was referring to some stuff that isn't out of beta yet:

        Parallel LINQ [microsoft.com] (for .NET)
        Parallel Patterns Library [microsoft.com] (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.

        • by rbanffy (584143)

          "Obviously, this stuff didn't have a chance to have any significant effect yet, and won't until first stable versions are released."

          Most Microsoft software is hardly stable, but has a very large effect on the market.

          This thing will be used as soon as point-and-click icon-dragging self-proclaimed programmers can have it in Visual Studio with a couple wizards to help them graft if on tp of their programs.

    • Re:pffff (Score:5, Interesting)

      by NewbieProgrammerMan (558327) on Sunday June 07, 2009 @06:06AM (#28240157)

      You'd think that somebody that's light-years ahead when it comes to parallel processing would rule the roost in the Top 500 [top500.org] supercomputer list. I'm sure there's a good explanation, though....just waiting to hear it. :)

      • by Wormholio (729552)

        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. :)

        To get on the Top 500 list your machine is measured against the LINPACK benchmark. It's not the best benchmark for parallel performance, so in many cases nobody has bothered.

        • Re: (Score:2, Funny)

          by symbolset (646467)

          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.

    • Re:pffff (Score:5, Insightful)

      by dbIII (701233) on Sunday June 07, 2009 @06:10AM (#28240167)

      Try programming in linux for one day and then throw parallel processing into it.

      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?

      • by Teckla (630646)

        kicking of the processes

        Listen up, mister! We don't take kindly to process abuse around here!

    • Re:pffff (Score:5, Informative)

      by Cyberax (705495) on Sunday June 07, 2009 @06:12AM (#28240173)

      "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?

    • And slashdot doesn't get my humour.

       

    • by pigwiggle (882643) on Sunday June 07, 2009 @11:09AM (#28241399) Homepage

      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.

    • Somebody better tell the admins of the computers on this list [top500.org] they're wasting their time.
  • Old stuff (Score:2, Interesting)

    by Linker3000 (626634)

    Shame I don't have any of the code developed in the mid-late 80s where I worked for the Transputer - it's probably riddled with prior art.

    • Shame I don't have any of the code developed in the mid-late 80s where I worked for the Transputer - it's probably riddled with prior art.

      It's the thing Occam targeted, right? If so, it seems to not be the case - from a cursory glance at the patents, it seems that it's about automated query parallelism. When looking for prior art, I'd expect something like SQL implementations to be more likely candidates.

      • Would *Lisp [wikipedia.org] satisfy your expectations?
        • Hard to say - the Wikipedia article you link to sounds interesting, but there are no in-depth explanations nor code samples, and not a single external link in the article to read more about it.

  • Yes but... (Score:2, Funny)

    by plankrwf (929870)

    Yes but...
    The big question is:
    If the three patents are 'processed in parallel' by the USPTO, would that constituate prior art ;-0

  • > 1. A computer-readable storage medium storing computer-executable instructions for performing a method comprising:re-writing a query to contain data parallel operations that include partitioning and merging, wherein the query identifies at least one input data source;partitioning the at least one input data source into a plurality of initial partitions;performing a parallel repartitioning operation on the initial partitions, thereby generating a plurality of secondary partitions; andperforming a parall
  • the recent court ruling that makes it more difficult to get software patents in the first place. There is a good chance that even if they are not challenged due to prior art, they wouldn't pass muster anyway.

    Serve the bastards right.
    • Except... the "recent court rulings" you refer to were at the circuit court or lower. Bliski is now accepted for SCOTUS term 2010, so regardless of how that comes down and certainly nobody knows at this point, it's business as usual for the various software patenters.

      And realistically, while we can hope the entire software patent policy gets cremated, it's not all that likely to happen. We can hope tho, particularly since the SCOTUS has never actually ruled that they were allowed in the first place and th

      • Federal appeals court rulings are binding on patents (state law does not apply). Bilski is binding until its actually overturned.

  • by NewbieProgrammerMan (558327) on Sunday June 07, 2009 @06:09AM (#28240161)

    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!

    • by rbanffy (584143)

      "[b.belong('us') for b in bases if b.owner() == 'you']"

      If it could use different cores and run automatically in parallel, we could sink some of these patents ;-)

    • by shentino (1139071)

      Microsoft is also infringing on your sig.

  • by Lazy Jones (8403) on Sunday June 07, 2009 @06:23AM (#28240199) Homepage Journal
    These patents look very much like they would cover MapReduce, the parallel search patent is obviously just a specification of a straightforward parallel search implementation e.g. using PVM (many trivial implementations exist since the 90s).

    The USPTO will once again be the laughing stock of the whole IT field if they grant these patents.

  • Rules of the Game (Score:5, Insightful)

    by jamesl (106902) on Sunday June 07, 2009 @06:35AM (#28240231)

    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.

    • Re: (Score:3, Insightful)

      by Anonymous Coward

      Whining can be considered by people other than you to be a call to arms, which is often the first step taken pursuant to option #2.

    • by moon3 (1530265)
      Mod parent up.
    • So, basically you're saying the system is broken?

    • by MrMista_B (891430)

      So you'd just rather cowardly keep your mouth shut and silently accept it?

      I'm sorry, but people like you are the reason the system is so fucked up to begin with.

      • Re: (Score:3, Insightful)

        by jamesl (106902)

        Your implication is that there are only two choices: "Criticize Microsoft and others for playing by the rules" and "keeping your mouth shut and silently accepting it." There are others, all more effective.

    • Re:Rules of the Game (Score:4, Informative)

      by hubert.lepicki (1119397) on Sunday June 07, 2009 @08:43AM (#28240711)

      As a software developer and small player in this market i must agree. I don't use Microsoft's products, nor I make living from selling/using them, but that doesn't change the fact you can't criticize Microsoft for playing the rules of the game.

      However, what you can blame Microsoft for is not trying to change the rules. They seem to be happy with things the way they are. I won't bring quotes from Bill Gates from past saying software patents is stupid, just go and google it.

      The same applies to IBM and other big vendors, possibly with the exception of Sun and Novell (but go and figure out how these two ended up...).

      These companies lobby very successfully in favor of software patents. They act together, as a team. They profit from their actions and other companies suffer. I can't think of different way of naming it than a CARTEL.

      They are doing this different way than other cartels do. They are not fixing prices, but use law system to enforce their privileged positions and make life of other companies much more difficult and - most important - expensive. This means their products are also more expensive, and here is real intention of having software patents system in place - not to allow new players to enter the game. This is a cartel, but I don't know if EU/US governments will ever realize it.

      • by jamesl (106902)

        ... and here is real intention of having software patents system in place - not to allow new players to enter the game.

        Anyone can apply for and receive a patent.

  • by itsybitsy (149808) * on Sunday June 07, 2009 @06:43AM (#28240255)

    Strange I was just researching MapReduce online when this slashdot posting appeared.

    http://www.cs.vu.nl/~ralf/MapReduce/paper.pdf [cs.vu.nl]
    http://cnx.org/content/m20644/latest/ [cnx.org]
    http://en.wikipedia.org/wiki/MapReduce [wikipedia.org]
    http://en.wikipedia.org/wiki/Google_File_System [wikipedia.org]

    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.

    • Yes. I came here to post about MapReduce [wikipedia.org] as well. Especially the first patent summary reads like a description of the MapReduce algorithm. Furthermore the claimant and the examiner of the patent seem to be oblivious of even the most basic concepts of computer science such as Divide and Conquer [wikipedia.org]. Microsoft pretends to be certain about the outcome of the Bilski review.

    • Not only MapReduce; the global description of the patent (input, partition, repartition, output) seems just to be a prehistoric version of partitioners like MeTiS, parkway, Mondriaan, Zoltan, etc. Prior art in abondance.
  • Looks ok (Score:2, Funny)

    by Anonymous Coward

    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

    • Re:Looks ok (Score:5, Funny)

      by fartrader (323244) on Sunday June 07, 2009 @07:08AM (#28240339)

      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

      Thanks Steve for your comments.

  • They may be coming in late on the parallel processing game, but they're ahead when it needs to patent it. They'd patent parallel parking if they could.
  • Could someone tell them to try to get ONE thing at once right before they try to fuck up your system multiple ways simultanously?

  • by Anonymous Coward on Sunday June 07, 2009 @08:08AM (#28240555)

    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)

  • Sigh... (Score:2, Funny)

    by Blankw (1571367)
    Looks like they won't stop until they can patent breathing too. ...Ballmer, don't even think about it, I said it first.
  • i think that Microsoft's patents are shallow and pedantic.
  • That's my reading, if these patents are granted.

    It also pwns LDAP, and ORACLE, and well, pretty much everything that will run on multicore CPUs and GPGPUs.

    Lovely, time to take up an honest trade.

  • MS is becoming quite the patent troll lately. I suppose it's a form of self-preservation. I mean, lets face it. Between Google and open source software they know their once-impregnable empire is going to be in trouble if they don't galvanize their defenses in any way they can. Personally I think they should focus on gaming. Oh wait, I forgot they are trying to patent the ever-loving crap out of that too.
  • by Anonymous Coward

    Having worked at Teradata, where Parallel Data Processing is the life and breath, how does Microsoft expect to add 'data' in front of parallel processing and expect to own it? Teradata's prior art begins in '79. I'm not sure, but wasn't Microsoft incorporated after that?

    Really. Can't the Patent Office bill applicants with actual, putative and stupidity costs to stop such bullshit filings?

  • by loxosceles (580563) on Sunday June 07, 2009 @01:59PM (#28242677)

    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.

  • This is another example of rediculous patents. It's like trying to patent the wheel. There must be tons of prior art out there. For one, I've used Oracle parallel query since Oracle7, which was somewhere around 1998. When will you Americans stop to subsidise the lawyers this way? It's a silly system whereby you have to get as many patents as possible, just to fight of somebody else doing the same thing, and the one who can pay the most lawyers wins...
  • From the description, it sounds like this is found in TBB [intel.com] and research done for DARPA in PGAS [renci.org]. GCN had a blog post, "Does parallel processing require new languages? [gcn.com]", about this the other day.

I am the wandering glitch -- catch me if you can.

Working...