the processing of program instructions by diving them among multiple processors with the objective of running a program in less time.
multi-core/multi-processor configs to run multiple tasks at once
is when two tasks start at the same time, making it a special case of concurrent execution