Serial vs parallel computing Flashcards
What is a serial computation?
- A problem is broken into a secrete series of instructions
- Instructions are executed sequentially one after another
- Executed on a single processor
- Only one instruction may execute at any moment in time
What is parallel computing?
In the simplest sense, parallel computing is the simultaneous use of multiple computer resources to solve a computational problem.
Step-by-step parallel computing is:
- The problem is broken down into discrete parts that can be solved simultaneously.
- Each part will need to have a series of instructions to execute the sub problem.
- These instructions are executed simultaneously on the different processors
- Need overall control mechanism
What should the computational problem be able to do?
- Be broken apart into discrete pieces of work that can be soled simultaneously;
- Execute multiple program instructions at any moment in time;
- Be solved in less time with multiple compute resources than with a single computer resource
The computer resources are typically:
- A single computer with multiple processors/ cores
OR - An arbitrary number of such computer connected by a network
Parallel computing has been considered to be “the high end of computing”, and has been used to model difficult problems in many areas of science and engineering.
Describe an example where parallel computing is used
MRI scan - data from body is split into discrete parts or sub problems. Each part is processed to generate images for each section with its own instructions by multiple processors.
The results of the images from each section are put together to render a full body image.
Two unrelated terms used in computing are
- parallel transmission of data
- parallel processing
Explain what each means and give an example of where parallel processing might be useful
- Parallel transmission of data: can send multiple bits simultaneously over multiple lines/ wires.
- Parallel processing: simultaneous use of multiple cores to perform one task. Example: producing image of MRI scan.
Just because it is a parallel processor doesn’t mean it is working in parallel. Explain comparing multi core and a single core processor:
- Multi core processor: multiple cores running in parallel on a single device.
- Single core processor:
Just because the processing of the jobs happens in parallel doesn’t mean it is faster. Explain:
-
Describe the purpose of a register in the CPU
is temporary storage for data or instructions that is located on the processor.
Describe the purpose of Control Unit
Manages execution of instruction and synchronises instruction.
Describe the purpose of the ALU
Forms functions of input values and produces a single output result.
Name three registers that are essential to the fetch-execute cycle
- Memory address register
- Memory data register (instruction that needs to be executed from memory)
- Current instruction register
Briefly describe the fetch-decode-execute cycle
FETCH- Program counter: stores address of the next instruction to be executed
FETCH - MAR: address of next instruction copied to MAR increment PC to address of next instruction
FETCH- Address bus: carries address to memory instruction at address is copied to MBR via data bus instruction in MBR is copied to CIR.
op-code is going to decode and the operand goes to ALU which carries out calculation to the ACC.
Describe using example what the difference between a general purpose register and a dedicated register.
Dedicated register - specific purpose and cannot be changed by programmer.
General purpose register - can be changed by programmer/ can store data.