Adaptive Redundancy for Hybrid Processor Reliability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Hybrid systems with mixed architectures, such as IBM System z and commodity accelerators, face reliability issues due to differences in failure rates, leading to effective reliability being lower than the weakest link, as existing systems do not effectively utilize redundancy across heterogeneous components.
Innovation Solution
Implementing a unified, workload-optimized, adaptive redundancy scheme that performs computations multiple times and compares results, using agents to manage workloads across processors with different architectures, and employing modular redundancy to ensure reliability, availability, and serviceability across the system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If redundancy checking is performed by executing computations multiple times and comparing results, then reliability is improved, but productivity deteriorates due to increased computation time and resource consumption
Solution Approach 1:
The system dynamically adjusts the redundancy level for different workloads based on their reliability requirements. The workload classifier categorizes incoming computations into different reliability classes, and the system applies appropriate redundancy strategies (e.g., no redundancy, single-bit redundancy, or full redundancy) accordingly. This dynamic adaptation allows the system to maintain high reliability for critical workloads while preserving productivity for less critical tasks.
Solution Approach 2:
Different redundancy strategies are applied to different parts of the computation based on their specific requirements. The system applies redundancy checking selectively to certain computational kernels or data types rather than uniformly to all computations. This localized approach ensures that reliability-critical operations receive enhanced protection while non-critical operations proceed with minimal overhead.
2Productivity
If heterogeneous processors with different architectures are used to improve productivity and cost-effectiveness, then device complexity increases and reliability management becomes more difficult
Solution Approach 1:
The system employs a universal workload classifier and reliability management framework that operates across all heterogeneous processors regardless of their specific architecture. The classifier uses architecture-agnostic features to categorize workloads, and the redundancy management system applies standardized protocols across different processor types (GPUs, FPGAs, CPUs, ASICs). This universal approach simplifies complexity by providing a consistent interface and management layer over diverse hardware platforms.
Solution Approach 2:
The workload classifier acts as an intermediary between the heterogeneous processors and the reliability management system. It translates architecture-specific computation characteristics into a unified classification framework, enabling the reliability system to make informed decisions without needing to understand the intricate details of each processor architecture. This intermediary layer abstracts away the complexity of heterogeneous systems.
3Reliability
If redundant computations are performed on heterogeneous processors with different instruction sets, then reliability is improved, but measurement precision deteriorates due to potential differences in computation results
Solution Approach 1:
The system applies different verification strategies based on the computational domain and precision requirements. For integer arithmetic and bitwise operations where exact equality is expected, strict comparison is used. For floating-point operations where minor precision differences are acceptable, the system uses tolerance-based comparison or statistical verification. This localized approach to verification maintains reliability while accommodating the inherent precision characteristics of different computation types.
Solution Approach 2:
The system changes the verification parameters based on the workload characteristics. For different data types (integer, floating-point, boolean), different comparison thresholds and verification methods are applied. The workload classifier identifies the precision requirements of each computation and adjusts the redundancy verification parameters accordingly, allowing reliable error detection without falsely flagging legitimate precision variations.
Data Source
AI summary
A method, system, and computer program product for maintaining reliability in a computer system. In an example embodiment, the method includes managing workloads on a first processor with a first processor architecture by an agent process executing on a second processor with a second processor architecture. The method proceeds by activating redundant computation on the second processor by the agent process. The method continues by performing a same computation from a workload of the workloads at least twice. Finally, the method includes comparing results of the same computation. In this embodiment the first processor is coupled the second processor by a network, and the first processor architecture and second processor architecture are different architectures.


