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.