Page 99 - Anatomy of a Robot
P. 99

03_200256_CH03/Bergren  4/17/03  12:27 PM  Page 84
                             84 CHAPTER THREE
                               The technique in the previous example cannot be extrapolated to a much more com-
                             plex computational problem. As the statements in complex programs grow in size, the
                             number of “branches” increases rapidly. In the previous If statement, only 1 branch was
                                                         1
                             used, so we only needed about 2 processors (3 actually). In more complex programs
                             with many branches, the number of processors needed grows very rapidly, making par-
                             allel processing impractical. The way to avoid this problem is to restrict the number of
                             applications we try to tackle with parallel processing.
                               Many classical computational problems can still be partitioned naturally into paral-
                             lel tasks. Consider weather processing or vision systems (for the robot). The field of
                             view can be partitioned into areas, and a single processor can be assigned to each area
                             in an array. Each processes the information coming into its area. Generally, the proces-
                             sors can communicate with their neighboring processors. In a weather application, each
                             processor updates the weather in its small area (which may only be a few hundred
                             meters square). It communicates with its neighboring computers to inform them about
                             relevant events, such as moist air moving into their area. In such a way, weather fore-
                             casts have been made much more accurate and timely. The array processor has the gen-
                             eral structure shown in Figure 3-5.
                               Such an array can be built using general-purpose processors, but companies have cre-
                             ated processors specifically designed for parallel processing. They contain communi-
                             cation structures and special instructions that make parallel processing more efficient.






                                                                          4 Parallel Processors
                                                                          Predict Weather

                                                       Data













                                           4 US Weather Zones

                             FIGURE 3-5 Parallel processors can divide up calculations for weather
                             prediction.
   94   95   96   97   98   99   100   101   102   103   104