TurboFFT: Co-Designed High-Performance and Fault-Tolerant Fast Fourier Transform on GPUs

GPU-based fast Fourier transform (FFT) is extremely important for scientific computing and signal processing. However, we find the inefficiency of existing FFT libraries and the absence of fault tolerance against soft error. To address these issues, we introduce TurboFFT, a new FFT prototype co-desi...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Wu, Shixun, Zhai, Yujia, Liu, Jinyang, Huang, Jiajun, Jian, Zizhe, Dai, Huangliang, Di, Sheng, Cappello, Franck, Chen, Zizhong
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page
container_issue
container_start_page
container_title
container_volume
creator Wu, Shixun
Zhai, Yujia
Liu, Jinyang
Huang, Jiajun
Jian, Zizhe
Dai, Huangliang
Di, Sheng
Cappello, Franck
Chen, Zizhong
description GPU-based fast Fourier transform (FFT) is extremely important for scientific computing and signal processing. However, we find the inefficiency of existing FFT libraries and the absence of fault tolerance against soft error. To address these issues, we introduce TurboFFT, a new FFT prototype co-designed for high performance and online fault tolerance. For FFT, we propose an architecture-aware, padding-free, and template-based prototype to maximize hardware resource utilization, achieving a competitive or superior performance compared to the state-of-the-art closed-source library, cuFFT. For fault tolerance, we 1) explore algorithm-based fault tolerance (ABFT) at the thread and threadblock levels to reduce additional memory footprint, 2) address the error propagation by introducing a two-side ABFT with location encoding, and 3) further modify the threadblock-level FFT from 1-transaction to multi-transaction in order to bring more parallelism for ABFT. Our two-side strategy enables online correction without additional global memory while our multi-transaction design averages the expensive threadblock-level reduction in ABFT with zero additional operations. Experimental results on an NVIDIA A100 server GPU and a Tesla Turing T4 GPU demonstrate that TurboFFT without fault tolerance is comparable to or up to 300\% faster than cuFFT and outperforms VkFFT. TurboFFT with fault tolerance maintains an overhead of 7\% to 15\%, even under tens of error injections per minute for both FP32 and FP64.
doi_str_mv 10.48550/arxiv.2412.05824
format Article
fullrecord <record><control><sourceid>arxiv_GOX</sourceid><recordid>TN_cdi_arxiv_primary_2412_05824</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2412_05824</sourcerecordid><originalsourceid>FETCH-arxiv_primary_2412_058243</originalsourceid><addsrcrecordid>eNqFjrEOgjAURbs4GPUDnHw_UASEhLiilZGhJm6kyAObQGtewejfC8Td5d7cmzMcxraB70VJHPt7RW_98sIoCD0_TsJoyW5yoNIKIY-QWn5CpxuDFWS6efAcqbbUKXNHUKYCoYa259K2SMr043Rj2IE0EsjxchMN1sAlv7o1W9Sqdbj59YrtxFmmGZ8diifpTtGnmFyK2eXwn_gCeC8-Tg</addsrcrecordid><sourcetype>Open Access Repository</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype></control><display><type>article</type><title>TurboFFT: Co-Designed High-Performance and Fault-Tolerant Fast Fourier Transform on GPUs</title><source>arXiv.org</source><creator>Wu, Shixun ; Zhai, Yujia ; Liu, Jinyang ; Huang, Jiajun ; Jian, Zizhe ; Dai, Huangliang ; Di, Sheng ; Cappello, Franck ; Chen, Zizhong</creator><creatorcontrib>Wu, Shixun ; Zhai, Yujia ; Liu, Jinyang ; Huang, Jiajun ; Jian, Zizhe ; Dai, Huangliang ; Di, Sheng ; Cappello, Franck ; Chen, Zizhong</creatorcontrib><description>GPU-based fast Fourier transform (FFT) is extremely important for scientific computing and signal processing. However, we find the inefficiency of existing FFT libraries and the absence of fault tolerance against soft error. To address these issues, we introduce TurboFFT, a new FFT prototype co-designed for high performance and online fault tolerance. For FFT, we propose an architecture-aware, padding-free, and template-based prototype to maximize hardware resource utilization, achieving a competitive or superior performance compared to the state-of-the-art closed-source library, cuFFT. For fault tolerance, we 1) explore algorithm-based fault tolerance (ABFT) at the thread and threadblock levels to reduce additional memory footprint, 2) address the error propagation by introducing a two-side ABFT with location encoding, and 3) further modify the threadblock-level FFT from 1-transaction to multi-transaction in order to bring more parallelism for ABFT. Our two-side strategy enables online correction without additional global memory while our multi-transaction design averages the expensive threadblock-level reduction in ABFT with zero additional operations. Experimental results on an NVIDIA A100 server GPU and a Tesla Turing T4 GPU demonstrate that TurboFFT without fault tolerance is comparable to or up to 300\% faster than cuFFT and outperforms VkFFT. TurboFFT with fault tolerance maintains an overhead of 7\% to 15\%, even under tens of error injections per minute for both FP32 and FP64.</description><identifier>DOI: 10.48550/arxiv.2412.05824</identifier><language>eng</language><subject>Computer Science - Distributed, Parallel, and Cluster Computing</subject><creationdate>2024-12</creationdate><rights>http://arxiv.org/licenses/nonexclusive-distrib/1.0</rights><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>228,230,780,885</link.rule.ids><linktorsrc>$$Uhttps://arxiv.org/abs/2412.05824$$EView_record_in_Cornell_University$$FView_record_in_$$GCornell_University$$Hfree_for_read</linktorsrc><backlink>$$Uhttps://doi.org/10.48550/arXiv.2412.05824$$DView paper in arXiv$$Hfree_for_read</backlink></links><search><creatorcontrib>Wu, Shixun</creatorcontrib><creatorcontrib>Zhai, Yujia</creatorcontrib><creatorcontrib>Liu, Jinyang</creatorcontrib><creatorcontrib>Huang, Jiajun</creatorcontrib><creatorcontrib>Jian, Zizhe</creatorcontrib><creatorcontrib>Dai, Huangliang</creatorcontrib><creatorcontrib>Di, Sheng</creatorcontrib><creatorcontrib>Cappello, Franck</creatorcontrib><creatorcontrib>Chen, Zizhong</creatorcontrib><title>TurboFFT: Co-Designed High-Performance and Fault-Tolerant Fast Fourier Transform on GPUs</title><description>GPU-based fast Fourier transform (FFT) is extremely important for scientific computing and signal processing. However, we find the inefficiency of existing FFT libraries and the absence of fault tolerance against soft error. To address these issues, we introduce TurboFFT, a new FFT prototype co-designed for high performance and online fault tolerance. For FFT, we propose an architecture-aware, padding-free, and template-based prototype to maximize hardware resource utilization, achieving a competitive or superior performance compared to the state-of-the-art closed-source library, cuFFT. For fault tolerance, we 1) explore algorithm-based fault tolerance (ABFT) at the thread and threadblock levels to reduce additional memory footprint, 2) address the error propagation by introducing a two-side ABFT with location encoding, and 3) further modify the threadblock-level FFT from 1-transaction to multi-transaction in order to bring more parallelism for ABFT. Our two-side strategy enables online correction without additional global memory while our multi-transaction design averages the expensive threadblock-level reduction in ABFT with zero additional operations. Experimental results on an NVIDIA A100 server GPU and a Tesla Turing T4 GPU demonstrate that TurboFFT without fault tolerance is comparable to or up to 300\% faster than cuFFT and outperforms VkFFT. TurboFFT with fault tolerance maintains an overhead of 7\% to 15\%, even under tens of error injections per minute for both FP32 and FP64.</description><subject>Computer Science - Distributed, Parallel, and Cluster Computing</subject><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2024</creationdate><recordtype>article</recordtype><sourceid>GOX</sourceid><recordid>eNqFjrEOgjAURbs4GPUDnHw_UASEhLiilZGhJm6kyAObQGtewejfC8Td5d7cmzMcxraB70VJHPt7RW_98sIoCD0_TsJoyW5yoNIKIY-QWn5CpxuDFWS6efAcqbbUKXNHUKYCoYa259K2SMr043Rj2IE0EsjxchMN1sAlv7o1W9Sqdbj59YrtxFmmGZ8diifpTtGnmFyK2eXwn_gCeC8-Tg</recordid><startdate>20241208</startdate><enddate>20241208</enddate><creator>Wu, Shixun</creator><creator>Zhai, Yujia</creator><creator>Liu, Jinyang</creator><creator>Huang, Jiajun</creator><creator>Jian, Zizhe</creator><creator>Dai, Huangliang</creator><creator>Di, Sheng</creator><creator>Cappello, Franck</creator><creator>Chen, Zizhong</creator><scope>AKY</scope><scope>GOX</scope></search><sort><creationdate>20241208</creationdate><title>TurboFFT: Co-Designed High-Performance and Fault-Tolerant Fast Fourier Transform on GPUs</title><author>Wu, Shixun ; Zhai, Yujia ; Liu, Jinyang ; Huang, Jiajun ; Jian, Zizhe ; Dai, Huangliang ; Di, Sheng ; Cappello, Franck ; Chen, Zizhong</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-arxiv_primary_2412_058243</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2024</creationdate><topic>Computer Science - Distributed, Parallel, and Cluster Computing</topic><toplevel>online_resources</toplevel><creatorcontrib>Wu, Shixun</creatorcontrib><creatorcontrib>Zhai, Yujia</creatorcontrib><creatorcontrib>Liu, Jinyang</creatorcontrib><creatorcontrib>Huang, Jiajun</creatorcontrib><creatorcontrib>Jian, Zizhe</creatorcontrib><creatorcontrib>Dai, Huangliang</creatorcontrib><creatorcontrib>Di, Sheng</creatorcontrib><creatorcontrib>Cappello, Franck</creatorcontrib><creatorcontrib>Chen, Zizhong</creatorcontrib><collection>arXiv Computer Science</collection><collection>arXiv.org</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Wu, Shixun</au><au>Zhai, Yujia</au><au>Liu, Jinyang</au><au>Huang, Jiajun</au><au>Jian, Zizhe</au><au>Dai, Huangliang</au><au>Di, Sheng</au><au>Cappello, Franck</au><au>Chen, Zizhong</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>TurboFFT: Co-Designed High-Performance and Fault-Tolerant Fast Fourier Transform on GPUs</atitle><date>2024-12-08</date><risdate>2024</risdate><abstract>GPU-based fast Fourier transform (FFT) is extremely important for scientific computing and signal processing. However, we find the inefficiency of existing FFT libraries and the absence of fault tolerance against soft error. To address these issues, we introduce TurboFFT, a new FFT prototype co-designed for high performance and online fault tolerance. For FFT, we propose an architecture-aware, padding-free, and template-based prototype to maximize hardware resource utilization, achieving a competitive or superior performance compared to the state-of-the-art closed-source library, cuFFT. For fault tolerance, we 1) explore algorithm-based fault tolerance (ABFT) at the thread and threadblock levels to reduce additional memory footprint, 2) address the error propagation by introducing a two-side ABFT with location encoding, and 3) further modify the threadblock-level FFT from 1-transaction to multi-transaction in order to bring more parallelism for ABFT. Our two-side strategy enables online correction without additional global memory while our multi-transaction design averages the expensive threadblock-level reduction in ABFT with zero additional operations. Experimental results on an NVIDIA A100 server GPU and a Tesla Turing T4 GPU demonstrate that TurboFFT without fault tolerance is comparable to or up to 300\% faster than cuFFT and outperforms VkFFT. TurboFFT with fault tolerance maintains an overhead of 7\% to 15\%, even under tens of error injections per minute for both FP32 and FP64.</abstract><doi>10.48550/arxiv.2412.05824</doi><oa>free_for_read</oa></addata></record>
fulltext fulltext_linktorsrc
identifier DOI: 10.48550/arxiv.2412.05824
ispartof
issn
language eng
recordid cdi_arxiv_primary_2412_05824
source arXiv.org
subjects Computer Science - Distributed, Parallel, and Cluster Computing
title TurboFFT: Co-Designed High-Performance and Fault-Tolerant Fast Fourier Transform on GPUs
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2024-12-27T10%3A24%3A43IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-arxiv_GOX&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=TurboFFT:%20Co-Designed%20High-Performance%20and%20Fault-Tolerant%20Fast%20Fourier%20Transform%20on%20GPUs&rft.au=Wu,%20Shixun&rft.date=2024-12-08&rft_id=info:doi/10.48550/arxiv.2412.05824&rft_dat=%3Carxiv_GOX%3E2412_05824%3C/arxiv_GOX%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rfr_iscdi=true