Compiler-managed fault tolerance techniques for general purpose graphics processing units
No Thumbnail Available
Date
2022-06
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Izmir Institute of Technology
Open Access Color
OpenAIRE Downloads
OpenAIRE Views
Abstract
As the use of graphics processing units evolves for general-purpose computations besides inherently-fault tolerant graphics programs, soft error reliability becomes a first-class citizen in program design. In this thesis, we aim to increase the reliability of general-purpose graphics processing units. We propose compiler-based redundancy schemes for graphics processing units. Our framework replicates the annotated kernel function by a programmer at compile time. Our selective redundancy approach enables us to provide full redundancy with no error and partial redundancy with an acceptable error rate with higher performance. We develop different schemes to satisfy the performance and memory requirements of the general-purpose graphics processing unit applications. We build our framework on top of the LLVM compiler framework to increase the reliability of applications that exploit the CUDA programming model and evaluate our schemes for the applications from the PolyBench benchmark suite. We reveal that our partial redundancy approach improves the reliability with a small performance overhead and our full redundancy schemes provide complete fault coverage with varying performance differences based on the application's characteristics.
Grafik işlem birimleri, doğası gereği hataya dayanıklı grafik programlarının yanında genel amaçlı hesaplamalar için kullanılması artmasından dolayı, yumuşak hata güvenilirliği, program tasarımında önemli bir sorun haline gelir. Bu tezde, genel amaçlı grafik işlemci birimlerinin güvenilirliğini artırmayı hedefliyoruz. Bu çalışmada, grafik işleme birimleri için derleyici tabanlı seçici yedekliliği öneriyoruz. Çerçevemiz, programlamacı tarafından işaretlenmiş çekirdek işlevini derleme zamanında çoğaltır. Seçici yedeklilik yaklaşımımız, hatasız tam yedeklilik ve daha yüksek performansla kabul edilebilir bir hata oranıyla kısmi yedeklilik sağlamamızı sağlar. GPGPU uygulamalarının performans ve bellek gereksinimlerini karşılamak için farklı şemalar geliştiriyoruz. Çerçevemizi LLVM derleyici çerçevesinin üzerine kurduk, programlama modeli olarak CUDA programlama modelini; şemalarımızı değerlendirmek için PolyBench kıyaslama uygulamalarını kullanıyoruz. Kısmi yedeklilik yaklaşımımızın, küçük bir performans gecikmesi ile güvenilirliği geliştirdiğini ve tam yedeklilik şemalarımızın, uygulamanın özelliklerine bağlı olarak değişen performans farklılıklarıyla eksiksiz hata kapsamı sağladığını ortaya koyuyoruz.
Grafik işlem birimleri, doğası gereği hataya dayanıklı grafik programlarının yanında genel amaçlı hesaplamalar için kullanılması artmasından dolayı, yumuşak hata güvenilirliği, program tasarımında önemli bir sorun haline gelir. Bu tezde, genel amaçlı grafik işlemci birimlerinin güvenilirliğini artırmayı hedefliyoruz. Bu çalışmada, grafik işleme birimleri için derleyici tabanlı seçici yedekliliği öneriyoruz. Çerçevemiz, programlamacı tarafından işaretlenmiş çekirdek işlevini derleme zamanında çoğaltır. Seçici yedeklilik yaklaşımımız, hatasız tam yedeklilik ve daha yüksek performansla kabul edilebilir bir hata oranıyla kısmi yedeklilik sağlamamızı sağlar. GPGPU uygulamalarının performans ve bellek gereksinimlerini karşılamak için farklı şemalar geliştiriyoruz. Çerçevemizi LLVM derleyici çerçevesinin üzerine kurduk, programlama modeli olarak CUDA programlama modelini; şemalarımızı değerlendirmek için PolyBench kıyaslama uygulamalarını kullanıyoruz. Kısmi yedeklilik yaklaşımımızın, küçük bir performans gecikmesi ile güvenilirliği geliştirdiğini ve tam yedeklilik şemalarımızın, uygulamanın özelliklerine bağlı olarak değişen performans farklılıklarıyla eksiksiz hata kapsamı sağladığını ortaya koyuyoruz.
Description
Thesis (Master)--Izmir Institute of Technology, Computer Engineering, Izmir, 2022
Includes bibliographical references (leaves. 67-71)
Text in English; Abstract: Turkish and English
Includes bibliographical references (leaves. 67-71)
Text in English; Abstract: Turkish and English
ORCID
Keywords
Fault tolerance, Graphical Processing Units, GPGPU programs, Compilers