# Stuff that must be introduced early (intro/foundations)

## Intro to CPUs

* ISA
* Assembly
* SIMD
* μarch:
    * frontend
    * ports
    * in-order/out-of-order
    * pipeline
    * Mop
    * μop
    * renamer
    * ROB
    * L1-residence
* HW counters

## Foundations on code analyzers

* Define Cycles(K): retired instructions
* Define notion of bottleneck
* Static vs. dynamic
* PC
* ELF
* Basic block

## State of the art

* Tools:
    * IACA
    * llvm-mca
    * Osaca
    * uops.info
    * UiCA
    * PMEvo
