Litcius/Paper detail

Enabling Software Resilience in GPGPU Applications via Partial Thread Protection

Lishan Yang, Bin Nie, Adwait Jog, Evgenia Smirni

202125 citationsDOI

Abstract

Graphics Processing Units (GPUs) are widely used by various applications in a broad variety of fields to accelerate their computation but remain susceptible to transient hardware faults (soft errors) that can easily compromise application output. By taking advantage of a general purpose GPU application hierarchical organization in threads, warps, and cooperative thread arrays, we propose a methodology that identifies the resilience of threads and aims to map threads with the same resilience characteristics to the same warp. This allows to engage partial replication mechanisms for error detection/correction at the warp level. By exploring 12 benchmarks (17 kernels) from 4 benchmark suites, we illustrate that threads can be remapped into reliable or unreliable warps with only 1.63% introduced overhead (on average), and then enable selective protection via replication to those groups of threads that truly need it. Furthermore, we show that thread remapping to different warps does not sacrifice application performance. We show how this remapping facilitates warp replication for error detection and/or correction and achieves average reduction of 20.61% and 27.15% execution cycles, respectively comparing to standard duplication/triplication.

Topics & Concepts

Computer scienceThread (computing)Parallel computingGeneral-purpose computing on graphics processing unitsDistributed computingSoftwareGraphicsEmbedded systemOperating systemParallel Computing and Optimization TechniquesRadiation Effects in ElectronicsDistributed systems and fault tolerance
Enabling Software Resilience in GPGPU Applications via Partial Thread Protection | Litcius