Unit 7 Flashcards
(21 cards)
Speed-up achieved on a multiprocessor without increasing the size of the problem
strong scaling
Speed-up achieved on a multiprocessor while increasing the size of the problem proportionally to the increase in the number of processors
weak scaling
a uniprocessor
SISD or single instruction stream
a multiprocessor
MIMD or multiple instruction streams
The conventional MIMD programming model, where a single program runs across all processors
SPMD or single program multiple data streams
The same instruction is applied to many data streams, as in a vector processor
SIMD or single instruction stream
Parallelism achieved by performing the same operation on independent data
data level parallelism
One or more vector functional units and a portion of the vector register file
vector lane
Increasing utilization of a processor by switching to another thread when one thread is stalled
hardware multithreading
includes the program counter, the register state, and the stack
thread
includes one or more threads, the address space, and the operating system state
process
A version of hardware multithreading that implies switching between threads after every instruction.
fine-grain multithreading
A version of hardware multithreading that implies switching between threads only after significant events, such as a last-level cache miss
coarse-grain multithreading
A version of multithreading that lowers the cost of multithreading by utilizing the resources needed for multiple issue, dynamically scheduled microarchitecture
simultaneous multithreading (SMT)
A multiprocessor in which latency to any word in main memory is about the same no matter which processor requests the access
uniform memory access
A type of single address space multiprocessor in which some memory accesses are much faster than others depending on which processor asks for which word
nonuniform memory access
A synchronization device that allows access to data to only one processor at a time
lock
Communicating between multiple processors by explicitly sending and receiving information
message passing
programming technique where operations on individual elements within a data structure (like an array) are replaced with operations on the entire structure
vectorization or vector based code
SIMD architecture designed by intel (Pentium)
MMX
An API for shared memory multiprocessing in C, C++, or Fortran that runs on UNIX and Microsoft platforms. It includes compiler directives, a library, and runtime directives
OpenMP