15.1 Processors, Parallel Processing and Virtual Machines Flashcards
CISC
Complex Instruction Set Computer
RISC
Reduced Instruction Set Computer
CISC features
- Many instruction formats are possible
- Design emphasis on hardware
- More addressing modes
- More difficult to make pipelining work
- Makes use of multi-cycle instructions.
RISC features
- Uses fewer instruction formats
- Fewer addressing modes
- Design emphasis on software
- Instructions are fixed length
- Faster execution time for instructions
- Easier to make pipelining work
- Makes extensive use of general purpose registers.
What is pipelining?
Pipelining is instruction-level parallelism, allowing a instruction to be split into a number of stages.
When the first stage of an instruction is completed, the first stage of the next instruction can start executing.
Processing of a number of instructions can therefore be simultaneous.
SISD
Single instruction single data.
Uses a single processor that can handle a single instruction and also uses one data source at a time. Tasks are processed in sequential order. And since there is a single computer, parralel processing is not possible.
eg Microprocessor used to control washing machine.
SIMD
Single instruction multiple data.
Uses many processors. Each processor executes the same instruction but uses different data inputs - doing same calculations but on different data at the same time.
Widely used to process 3D graphics in games.
MIMD
Multiple instruction multiple data.
Uses multiple processors. Each one can take instructions independently and can uses data from a seperate data source.
Most parallel computers use this architecture.
MISD
Multiple instruction single data.
Several processors. Each processor uses different instructions but shares the same data source.
Not commonly used.
Massively parralel computers
Large number of seperate processors working collaboratively on the same program communicating via a messaging interface.
What is a virtual machine?
An emulation of an existing computer system. A computer OS running within another computer’s OS.
Benefits of a VM
- Can run old/legacy software not compatible with new computer system.
- Can be used to test software as it protects the host computer if something goes wrong.
Limitations of a VM
- You do not get the same performance on guest OS compared to original system.
- Building a in-house virtual machine can be expensive for a company / hard to maintain.