1.1.2 Types of Processor
Differences between RISC and CISC processors:
CISC
- Aims to complete task in as few lines of assembly as possible - instructions are complex
- Processor hardware and circuitry is more complicated so it can understand the complicated instructions
- Compiler does less work to translate the statements into assembly
- Could take more than one clock cycle to execute
RISC
- Uses simple instructions that will be executed within a single clock cycle
- More lines of code - less efficient
- Compiler does less work
- Extra RAM is needed to store assembly instructions
- Less complex hardware is needed (more room for general purpose registers)
- Pipelining is possible
GPUs and their uses:
GPU: a co-processor which has lots of independent processors working in parallel making it very efficient at tasks such as image processing, and machine learning.
- Renders graphics
- Simple operations on larger sets applying the same operation repeatedly
- Repetitive tasks
Multi-core and Parallel Systems:
Multi-core system: Multi-core CPUs have multiple independent cores that can complete instructions separately resulting in higher performance
- some programs cant use all cores
- performance can be enhanced by shared cache
Parallel systems: Process program instructions by dividing them between multiple processors (split a job into multiple tasks which are completed in any processor)
- Software may not be designed to use parallel systems
- Overall, in larger projects, multi-core systems perform better than parallel systems.