Thread Relocation: A Runtime Architecture for Tolerating Hard Errors in Chip Multiprocessors | IEEE Journals & Magazine | IEEE Xplore