Floating Point Exception Control via Per-Instruction Masks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for managing floating point controls in computing environments require serialization to update floating point control/status registers, which is expensive and inefficient, especially when renaming the register is necessary.

Innovation Solution

A computer-implemented method that allows for the determination of an effective enablement control for floating point exceptions by combining user-specified values with centralized status exception controls, enabling efficient execution of instructions without the need for serialization or register renaming.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If floating point control/status register is updated using traditional methods, then floating point controls can be managed, but serialization is required which stops processing and reduces productivity

Engineering Contradiction:
Improvefloating point control managementVSAvoidprocessing throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The floating point control management is segmented into per-instruction exception enablement controls rather than a single centralized register update. Each instruction can specify its own exception enablement mask, eliminating the need for serialization during control updates while maintaining proper exception handling for each operation.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If floating point control register renaming is implemented, then control management flexibility is improved, but implementation cost and device complexity increases significantly

Engineering Contradiction:
Improvecontrol management flexibilityVSAvoidimplementation cost
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The exception enablement control is extracted from the centralized floating point control/status register and embedded directly into individual floating point instructions. This eliminates the need for complex register renaming mechanisms while providing per-instruction control flexibility through the instruction's own exception enablement mask field.

Inventive Principle:
Principle #2Taking out (Extraction)

3Manufacturing precision

If serialization is performed to update floating point controls, then control updates are ensured to be accurate, but processing time increases and efficiency decreases

Engineering Contradiction:
Improvecontrol update accuracyVSAvoidprocessing time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The exception enablement control is predetermined and embedded within each floating point instruction during instruction generation. This preliminary action eliminates the need for subsequent serialization during execution, as the control information is already in place with the instruction, ensuring both accuracy and time efficiency.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10768931B2Fine-grained management of exception enablement of floating point controls
Publication Date: 2020.09.08 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10768931B2 patent drawing
  • US10768931B2 patent drawing
  • US10768931B2 patent drawing

AI summary

Setting or updating of floating point controls is managed. Floating point controls include controls used for floating point operations, such as rounding mode and/or other controls. Further, floating point controls include status associated with floating point operations, such as floating point exceptions and/or others. The management of the floating point controls includes efficiently updating the controls, while reducing costs associated therewith.