Skip to main content
    United States [change]    Terms of use
    Home    Products    Services & solutions    Support & downloads    My account    
IBM Research

IBM Research - Almaden


 Unconnected Problems

The first problems addressed in large scale parallel environments were "unconnected problems". Imagine taking a large object and decomposing it into smaller pieces, then doing something individual with all of the pieces. In fact, just for example, imagine the task of taking a large boulder and turning it into sand.

You could tackle this job in a serial fashion, just whacking the boulder and all of its broken off chunks into smaller and smaller pieces. You could even decide on a "breadth first" approach -- whack all of the chunks of the same size, then all of the next size, and so on; or you could pursue a "depth first" approach -- whack smaller and smaller pieces, never moving to a larger piece until you've reduced something to sand.

Once you've considered the serial approach and the amount of time it would probably take you, you then consider the parallel approach (i.e. the grid method). First you partition the problem (you whack the original boulder into some number of semi-large chunks), then you distribute the "sub-tasks" to a set of workers (your friends, to whom you've promised a reward for participating in your experiment). Your friends start whacking away (and possibly further divide their tasks by passing out pieces of their original chunk to their friends -- Tom Sawyer would be proud). Notice that each boulder reducing operation is completely separate from the others. And, if one worker stops or slows down, that does not affect the rest of the group (any one of the workers could continue the work if someone stopped on their own piece).

SETI@Home is very much like this (if you can imagine that your first whack of the problem was a large pile of pea-size gravel). There's a pile of work to do -- a large collection of individual jobs. As computers become available, they take a piece of work off the pile, compute it, then put back the answer. If they can, they take more work. It's a simple and powerful model.

There are lots of projects like this, but some that we're more familiar with are these:

    About IBMPrivacyContact