  Research on Deep Neural Networks (DNNs) has focused on improving performance
and accuracy for real-world deployments, leading to new models, such as Spiking
Neural Networks (SNNs), and optimization techniques, e.g., quantization and
pruning for compressed networks. However, the deployment of these innovative
models and optimization techniques introduces possible reliability issues,
which is a pillar for DNNs to be widely used in safety-critical applications,
e.g., autonomous driving. Moreover, scaling technology nodes have the
associated risk of multiple faults happening at the same time, a possibility
not addressed in state-of-the-art resiliency analyses.
  Towards better reliability analysis for DNNs, we present enpheeph, a Fault
Injection Framework for Spiking and Compressed DNNs. The enpheeph framework
enables optimized execution on specialized hardware devices, e.g., GPUs, while
providing complete customizability to investigate different fault models,
emulating various reliability constraints and use-cases. Hence, the faults can
be executed on SNNs as well as compressed networks with minimal-to-none
modifications to the underlying code, a feat that is not achievable by other
state-of-the-art tools.
  To evaluate our enpheeph framework, we analyze the resiliency of different
DNN and SNN models, with different compression techniques. By injecting a
random and increasing number of faults, we show that DNNs can show a reduction
in accuracy with a fault rate as low as 7 x 10 ^ (-7) faults per parameter,
with an accuracy drop higher than 40%. Run-time overhead when executing
enpheeph is less than 20% of the baseline execution time when executing 100 000
faults concurrently, at least 10x lower than state-of-the-art frameworks,
making enpheeph future-proof for complex fault injection scenarios.
  We release enpheeph at https://github.com/Alexei95/enpheeph.
