In a superscalar CPU an instruction dispatcher reads instructions from memory and decides which ones can be run in parallel , dispatching them on the multiple redundant functional units available inside the CPU . In a superscalar CPU the dispatcher reads instructions from memory and decides which ones can be run in parallel , dispatching them to redundant functional units contained inside a single CPU .