when a processor executes more than one instruction at a time and works well with today's multi-core microprocessors
computers understanding how to divide tasks into parts that can be distributed across each core; allows multicore processors to be used effectively
multiple processors performing a single task (multiple instructions at a time) - illusion is called hyperthreading