|
|
|
|
|
|
|
not be updated, then its only function is to hold initial values. If we have a special initializing function from a tertiary memory, then we can eliminate the need for "main memory" and replace it with large nodal cache. Under such a system, a data value is completely decoupled from a physical memory location. Such a system also must have control to ensure that infrequently used values are never discarded. Notice that CC-NUMA operating under nonmemory update protocol can be made rather similar in behavior to COMA. |
|
|
|
|
|
|
|
|
Symmetric multiprocessors is an operating systems concept that any processor may run the operating system. Each processor has a copy of the operating system and any processor may arrange communication among processes as required. |
|
|
|
|
|
|
|
|
In asymmetric multiprocessors, a designated master processor controls the system and directs tasks and communications among the remaining processors. |
|
|
|
|
|
|
|
|
Table 8.7 presents a picture of some network shared memory machines and some of their parameters. The reader may wish to fill in categories, or even invent new ones! |
|
|
|
|
|
|
|
|
The appeal of multiprocessors is clear enough. As individual processors become faster and less expensive, there is great interest in arranging large ensembles of these processors to solve important single applications. However, there is probably no area of computer architecture where the application performance reality is at such variance with the linearly scaled peak performance of a multiprocessor ensemble. It can be very difficult to partition and schedule a large application over a significant number of processors. Beyond that, portions of the application that are necessarily serial or have less parallelism immediately tend to limit the potential speedup. |
|
|
|
|
|
|
|
|
However, there are some applications that have a great deal of inherent parallelism. They can be readily partitioned and easily scheduled. It is somewhat illusionary, though, to point to these applications as being representative of the broader universe of applications. This is what makes the study of multiprocessors frustrating. |
|
|
|
|
|
|
|
|
Over the next decade, it is expected that multiprocessors will become an increasingly important form of computer architecture. The most obvious kind of multiprocessor architecture is the shared memory multiprocessor. The shared memory paradigm allows the programmer to write processes which have a contemporary view of the entire state of the computation. This has two important consequences: |
|
|
|
|
|
|
|
|
1. While it appears to make the programming process easier, the fact that there may be large delays in accessing certain parts of that memory space significantly complicates the assignment of processes to processors and the management of the memory space. |
|
|
|
|
|
|
|
|
2. The hardware required to assure a coherent picture of memory to each of the processors is not insignificant. While there are many design |
|
|
|
|
|