"The authors present a broad body of state-of-the-art software techniques that alleviate the costly and decaying solution of redundant hardware. ... The book is written in a logical way, from the fundamentals to the state-of-the-art solutions. ... The attached appendices are especially welcome for interested readers and potential students, because here the authors describe some simulators and the source code of various algorithms." (Ramon Gonzalez Sanchez, Computing Reviews, April, 2017)
Introduction.- Background and Related Work.- Cross-Layer Reliability Analysis, Modeling, and Optimization.- Software Program-Level Reliability Modeling and Estimation.- Software Program-Level Reliability Optimization for Dependable Code Generation.- Dependable Code Execution using Reliability-Driven System Software.-Results and Discussion.- Summary and Conclusions.
Muhammad Shafique received his Ph.D. in Computer Science from Karlsruhe Institute of Technology (KIT) , Germany in 2011. Before, he was with Streaming Networks Pvt. Ltd. (2003-06) and WorldCall Multimedia (2001). Mr. Shafique received his B.Sc. Engineering degree (4 Gold Medals) from University of Engineering and Technology (UET) Lahore, Pakistan in 2000. He then completed his Masters in Information Technology (2 Gold Medals) from Pakistan Institute of Engineering and Applied Sciences (PIEAS) in 2003. He has also acquired an in-depth understanding of various video coding standards (HEVC , H.264/AVC , MVC, MPEG-1/2/4).
This book describes novel software concepts to increase reliability under user-defined constraints. The authors’ approach bridges, for the first time, the reliability gap between hardware and software. Readers will learn how to achieve increased soft error resilience on unreliable hardware, while exploiting the inherent error masking characteristics and error (stemming from soft errors, aging, and process variations) mitigations potential at different software layers.
· Provides a comprehensive overview of reliability modeling and optimization techniques at different hardware and software levels;