1 of 8

Multiprocessor organization

Prof. Dr. Noman Islam

2 of 8

Introduction

  • As computer technology has evolved, and as the cost of computer hardware has dropped, computer designers have sought more and more opportunities for parallelism, usually to enhance performance and, in some cases, to increase availability.
  • In an SMP organization, multiple processors share a common memory.
  • This organization raises the issue of cache coherence

3 of 8

Other approaches to computing

  • Multithreaded processors and chip multiprocessors
  • Clusters have become increasingly common to support workloads that are beyond the capacity of a single SMP.
  • Another approach to the use of multiple processors that we examine is that of nonuniform memory access (NUMA) machines.

4 of 8

NUMA

  • The NUMA approach is relatively new and not yet proven in the marketplace, but is often considered as an alternative to the SMP or cluster approach.
  • Vector computation approaches optimize the ALU for processing vectors or arrays of floating-point numbers.
  • They are common on the class of systems known as supercomputers.

5 of 8

Flynn’s taxonomy

  • Single instruction, single data (SISD) stream: A single processor executes a single instruction stream to operate on data stored in a single memory. Uniprocessors fall into this category.
  • Single instruction, multiple data (SIMD) stream: A single machine instruction controls the simultaneous execution of a number of processing elements on a lockstep basis. Each processing element has an associated data memory, so that instructions are executed on different sets of data by different processors. Vector and array processors fall into this category,.

6 of 8

  • Multiple instruction, single data (MISD) stream: A sequence of data is transmitted to a set of processors, each of which executes a different instruction sequence. This structure is not commercially implemented.
  • Multiple instruction, multiple data (MIMD) stream: A set of processors simultaneously execute different instruction sequences on different data sets. SMPs, clusters, and NUMA systems fit into this category.

7 of 8

8 of 8