Flynn's Taxonomy Flashcards
How can you improve the performance of a SISD machine?
Increase Clock speed
- Reduce critical path delay
- -Remove complex hardware with large critical path delay (dividers)
- -Improve implementation technology (decrease transistor size / distance to reduce delay between them)
- Will require / exhaust more power, extra cooling etc.
Explain the advantages / disadvantages of SIMD
Increases concurrency:
Instructions do the same operation to multiple fetched data values at a time
Disadvantage:
- Only works for applications which can be written to take advantage (do lots of the same operation already) Reverts to SISD otherwise, waistline performance
- Extra hardware (adders, muxes, routing from registers/memory)
Explain what a MISD CPU does
Splits instructions into multiple sub-instructions/stages (pipelining)
Multiple Instructions overlap in fetch / decode /execute
(If pipeline is full, (each stage busy) one instruction will end every clock cycle)
How can a MISD processor improve performance?
By breaking stages into smaller ones, less complex hardware circuits are required, lowering critical path delay and increasing clock speed (more instructions per sec)
Disadvantages of MISD?
Higher clock speed = more power dissipation
Due to concurrency/parallelism, data hazards occur
What is MIMD?
Multiple processors (physically joined or separate) which work together towards a common goal.
Passing data between each other with shared bus/communication network
Disadvantages of MIMD
Long time spent communicating / syncing memory access
Not all algorithms can work on this architecture (sequential etc)