A dynamic hardware redundancy mechanism for the in-field fault detection in cores of GPGPUs