Skip to content

Latest commit

 

History

History
32 lines (31 loc) · 1.35 KB

Data Level Parallelism.md

File metadata and controls

32 lines (31 loc) · 1.35 KB
title date lastmod
Data Level Parallelism
2022-11-08
2022-11-21

Data Level Parallelism

The same operation is performed on multiple data values concurrently in multiple processing units. Can reduce the Instruction Count to enhance performance

Processors

Different types of hardware can support different levels of data parallelism.

Flynn's Processor Taxonomy

Advantages of SIMD > MIMD

  • Allow sequential thinking yet achieves parallel speedup
  • Reduced energy usage
  • More efficient parallel efficiency

Single Instruction Multiple Data (SIMD)

Vector processor

One vector instruction can perform N computations, where N is the vector length.

  • Reduces the number of instructions: less branching
  • Less execution time with lower instruction count
  • Simpler design as there is no requirement for data dependency check since each execution is independent

Array processor

500

  • Array processor works more like a true parallel system, with each processor able to run same instruction on different data
  • Vector processor works in more of a pipelined fashion.

Multimedia Extensions (MMX)