application checkpointing application programming interface architectural state asymmetric multiprocessing barrel processor bit-level parallelism branch misprediction cache coherency cache only memory architecture computer hardware computer programming cost efficiency data dependency data parallelism distributed computing distributed memory distributed shared memory embarrassingly parallel execution unit explicit parallelism grand challenge problem grid computing high-performance computing implicit parallelism instruction level parallelism intel atom intel threading building blocks karp-flatt metric kerneltrap mimd misd massive parallel processing memory coherence message passing interface microarchitecture multiprocessing non-uniform memory access openmp operating system posix threads parallel random access machine parallel computing parallel programming model parallel slowdown pentium m replay system simd sisd shared memory simultaneous multithreading software lockout speedup super-threading supercomputer superscalar symmetric multiprocessing task parallelism unified parallel c vector processor