Lecture 2

office hours start next week - north building, 520F 3:15-5:15


some devices have powerful and weak cores - weak cores used when device is idle to save power

some tasks are parallelism-friendy, some are not

example:

amdahl's law:

example: suppose N=100 and x=0.8, then we have the following variation when we introduce new cores:

core count time
1 100
2 60
3 46.667
4 40
5 36

the time will never reach 20 seconds, regardless of how much compute we throw at it

takeaway: adding cores has diminishing returns

data dependency graph:

process:

process lifetime:

process states:

  1. new - process exists, but is not yet ready to be truly executed
  2. ready - process is in ready queue, waiting for cpu access
  3. running - process is running on the CPU
  4. waiting - process is doing something else and does not need the CPU (e.g. using hard disk)
  5. terminated - process is done running