Using All Processor Cores While Being Confident about Timing
Software Engineering Institute
Today, almost all computers use multicore processors. These computers have many processor cores such that one program can execute on one processor core and another program can execute on another processor core simultaneously (true parallelism). Typically, processor cores share memory. In today’s memory system, a large number of resources are used to make memory accesses faster in general but, unfortunately, also make execution time more unpredictable and dependent on
execution of other programs (because these other programs use shared resources in the memory system).