CSC/ECE 506 Fall 2007/wiki2 6 cv
Overview of the MSIMD Architecture
A MSIMD machine is usually designed around a group of processors that act as control units for a larger number of processors that operate on single-instruction multiple-data streams. Each control processor controls it’s assigned group of SIMD processors. Such a machine is capable of operating on multiple single-instruction multiple-data streams simultaneously. Some MSIMD machines can also change the number of processors assigned to each control unit dynamically based on the needs of the application that is currently running on the system. (Performance Modeling of Shared-Resource-Array Processors)
Applications
The unique design properties of a MSIMD machine allow it to achieve a high level of efficiency when solving certain types of problems. Some examples of such problems are described below:
Identifying Features in Images
In this application, the goal is to determine whether or not an object or a group of objects exists in an image. If the object exists, its position may also be determined. Different algorithms can detect different shapes, so it is quite common to combine use multiple algorithms or filters to process the same image in order to identify all of the target objects. One way this application can be designed to run on a MSIMD machine is by assigning each control processor a region of the image. Each cluster of SIMD processors then works on the resign of the image that it was assigned. Each control can communicate with adjacent controls in the event that one or more of the target objects spans multiple regions of the image. (An MSIMD Architecture for Feature Tracking)
Simulation of 3D vision using 2D images
In this application, the goal is to identify 3D objects by combining two or more 2D images of the same location. Each 2D image used is offset from the others to provide a slightly different angle to the scene/environment. This process is modeled after how humans identify 3D objects by combining the 2D images from both eyes. One technique for solving this problem is by simulating how the neurons in a brain work. A MSIMD machine allows each cluster of SIMD processors to simulate a different neuron which allows multiple neurons to be simulated simultaneously. The equations that are used to simulate each neuron can often be divided into multiple parts and each part assigned to a SIMD processor. This allows the problem to achieve a very high level of parallelism on a MSIMD machine. (3-D Wafer Stack Neurocomputing)
External Links
Performance Modeling of Shared-Resource-Array Processors
An MSIMD Architecture for Feature Tracking
3-D Wafer Stack Neurocomputing
wbosborn 14:06, 24 September 2007 (EDT)