G06F11/18

IDENTIFICATION OF OPTIMAL BIT APPORTIONMENTS FOR DIGITAL FUNCTIONS SUBJECT TO SOFT ERRORS
20230205651 · 2023-06-29 ·

A method includes identifying multiple apportionments, where each apportionment identifies numbers of bit copies to be stored in at least one memory for at least some bits of a data value. The method also includes, for each apportionment, estimating a numerical error associated with use of the apportionment with a specified function, where the numerical error is estimated by creating errors in bit copies of multiple data values processed using the specified function. The method further includes combining portions of different ones of the apportionments having lower estimated numerical errors to create multiple derived apportionments. The method also includes, for each derived apportionment, estimating a numerical error associated with use of the derived apportionment with the specified function. In addition, the method includes selecting a final apportionment for use with the specified function, where the final apportionment includes or is based on at least one of the derived apportionments.

DATA PROCESSING DEVICE
20170337110 · 2017-11-23 · ·

The present invention provides a data processing device that includes a memory and includes a first CPU and a second CPU, each having an instruction processing section to process an instruction, a cache to store part of data of the memory, an error detection section to detect an error in the data stored in the cache, and an error correction section to correct the data stored in the cache on the basis of the data stored in the cache and an error notification and output corrected data to the instruction processing section, wherein the error correction section of the first CPU receives, as input, the data stored in the cache of the first CPU, the error notification of the first CPU, the data stored in the cache of the second CPU, and the second error notification, and if the error notification of the first CPU is an error and the error notification of the second CPU is not an error, outputs the data stored in the cache of the second CPU to the instruction processing section of the first CPU, and in other cases, outputs the data stored in the cache of the first CPU to the instruction processing section of the first CPU.

MANAGING NODES OF A DBMS

A tool for replacing a first database node of a database management system by a second database node. The tool receives an indication that the first database node received a data access request for accessing a database shared between the first database node and the second database node. The tool duplicates the data access request at the first database node. Responsive to a determination that the duplicated data access request includes a data changing statement and a previously executed statement, the tool modifies the duplicated data access request to prevent execution of the data changing statement and the previously executed statement at the second database node. The tool executes the modified duplicated data access request at the second database node. The tool replaces, based on a replacement condition being met, the first database node with the second database node in the database management system.

System and method for ending view change protocol
11263067 · 2022-03-01 · ·

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for performing view change. One of the methods is to be implemented on a blockchain and performed by a first node of N nodes in a view change protocol. The method includes: multicasting a view change message to at least some of the N nodes; obtaining, respectively from at least Q second nodes of the N nodes, at least Q echo messages each comprising: a consistent current view known to the second node indicating a primary node designated among the N nodes, and a consistent current sequence number known to the second node, the current sequence number associated with a latest transaction or a latest block, the current sequence number is larger than a first sequence number known to the first node; and responsive to obtaining the at least Q echo messages, ending the view change protocol.

Dynamic restriping in nonvolatile memory systems

Data is stored as a first collection of memory blocks distributed across a first set of memory devices. It is determined that a first memory device in the first set is in a degraded state. Data is recovered corresponding to a first memory block in the first collection of memory blocks that is stored in the first memory device, which is configured to include a first number of memory blocks. The recovered data is stored in a second memory device as a new memory block, which is added to the first collection of memory blocks. The first memory device is removed from the first set and reconfigured with a second number of memory blocks that is less than the first number of memory blocks. Memory blocks in a second collection of memory blocks distributed across a second set of memory devices is stored in the reconfigured first memory device.

Multiplex control device

In one embodiment, a multiplex control device includes three or more control modules to execute same operations for same input signals, and a majority decision module to output an output signal that matches majority of output signals outputted by the control modules. Each control module includes an input module to convert an input signal into an input value, a first determination module to obtain input values from input modules of respective control modules to determine whether majority of input values among the obtained input values match, an operation executing module to execute an operation using the matched input value to generate an output value, a second determination module to obtain output values from operation executing modules of respective control modules to determine whether majority of output values among the obtained output values match, and an output module to convert the matched output value to generate an output signal.

Mediator assisted switchover between clusters

Techniques are provided for metadata management for enabling automated switchover. An initial quorum vote may be performed before a node executes an operation associated with metadata comprising operational information and switchover information. After the initial quorum vote is performed, the node executes the operation upon one or more mailbox storage devices. Once the operation has executed, a final quorum vote is performed. The final quorum vote and the initial quorum vote are compared to determine whether the operation is to be designated as successful or failed, and whether any additional actions are to be performed.

REDUNDANT PROCESSING FABRIC FOR AUTONOMOUS VEHICLES
20220058096 · 2022-02-24 ·

A redundant processing fabric in an autonomous vehicle may include: processing, by a first processing unit of a plurality of processing units, sensor data from a first sensor of a plurality of sensors, where the plurality of processing units are coupled to the plurality of sensors via a switched fabric, wherein the plurality of processing units and plurality of sensors are included in the autonomous vehicle, wherein the sensor data corresponds to an environment external to the autonomous vehicle; determining a failure in processing the sensor data by the first processing unit; and severing, in the switched fabric, a first communications path between the first sensor and the first processing unit; and establishing, in the switched fabric, a second communications path between the first sensor and a redundant processing unit.

Apparatus and methods for allocating and indicating engine control authority

A control apparatus includes a first controller configured to generate control signals for controlling an engine or other machine, a second controller configured to generate the control signals for controlling the machine, a transfer circuit, and an arbiter circuit. The transfer circuit is coupled between the machine and the controllers, and is configured to switch from a first state, where the transfer circuit passes the control signals from the first controller to the machine, to a second state, where the transfer circuit passes the control signals from the second controller to the machine, responsive to receiving a first failure signal from the first controller. The arbiter circuit includes three (or more) arbiters, and is configured to control the transfer circuit from the first state to the second state responsive to any two of the three arbiters generating second signals indicative of failure of the first controller.

Node failure detection and resolution in distributed databases
11500743 · 2022-11-15 · ·

Methods and systems to detect and resolve failure in a distributed database system is described herein. A first node in the distributed database system can detect an interruption in communication with at least one other node in the distributed database system. This indicates a network failure. In response to detection of this failure, the first node starts a failure resolution protocol. This invokes coordinated broadcasts of respective lists of suspicious nodes among neighbor nodes. Each node compares its own list of suspicious nodes with its neighbors' lists of suspicious nodes to determine which nodes are still directly connected to each other. Each node determines the largest group of these directly connected nodes and whether or not it is in that group. If a node isn't in that group, it fails itself to resolve the network failure.