TurboFFT: A High-Performance Fast Fourier Transform with Fault Tolerance on GPU
arxiv(2024)
摘要
The Fast Fourier Transform (FFT), as a core computation in a wide range of
scientific applications, is increasingly threatened by reliability issues. In
this paper, we introduce TurboFFT, a high-performance FFT implementation
equipped with a two-sided checksum scheme that detects and corrects silent data
corruptions at computing units efficiently. The proposed two-sided checksum
addresses the error propagation issue by encoding a batch of input signals with
different linear combinations, which not only allows fast batched error
detection but also enables error correction on-the-fly instead of recomputing.
We explore two-sided checksum designs at the kernel, thread, and threadblock
levels, and provide a baseline FFT implementation competitive to the
state-of-the-art, closed-source cuFFT. We demonstrate a kernel fusion strategy
to mitigate and overlap the computation/memory overhead introduced by fault
tolerance with underlying FFT computation. We present a template-based code
generation strategy to reduce development costs and support a wide range of
input sizes and data types. Experimental results on an NVIDIA A100 server GPU
and a Tesla Turing T4 GPU demonstrate TurboFFT offers a competitive or superior
performance compared to the closed-source library cuFFT. TurboFFT only incurs a
minimum overhead (7% to 15% on average) compared to cuFFT, even under
hundreds of error injections per minute for both single and double precision.
TurboFFT achieves a 23% improvement compared to existing fault tolerance FFT
schemes.
更多查看译文
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要