Operand Register Retention for Efficient Machine Learning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computing systems are inefficient in reusing operands in instruction set architectures, leading to increased complexity and hardware requirements, particularly in machine learning applications, where processors require additional resources and stalling occurs when trying to reuse results as inputs.

Innovation Solution

The solution involves allowing an instruction to specify that an operand register retains the data from a previous instruction, enabling the reuse of this data without loading a new value, and defining an implicit operand or new operand specifier code to optimize opcode bits, thus reducing the need for additional control logic and registers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If additional hardware components are added to enable operand reuse, then computing efficiency is improved, but device complexity increases

Engineering Contradiction:
Improvecomputing efficiencyVSAvoidhardware complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The operand register automatically retains its data without requiring explicit retention instructions or additional control logic. The register serves itself by maintaining the operand value across multiple instructions, eliminating the need for external management hardware or complex control mechanisms.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The operand register performs multiple functions: it stores operands for current instructions and simultaneously retains values for reuse by subsequent instructions. This multi-functionality eliminates the need for separate retention hardware or additional registers dedicated solely to operand reuse.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If additional registers are used to retain operand data, then operand reuse capability is improved, but device complexity increases

Engineering Contradiction:
Improveoperand reuse capabilityVSAvoidregister usage
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Existing operand registers are made multi-functional by enabling them to retain values across instructions. The same register that holds an operand for the current instruction also serves as a retention register for subsequent instructions, eliminating the need for dedicated retention registers.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The retention function is merged with the existing operand register functionality. Instead of separating retention operations into distinct hardware components, the patent combines both operand storage and value retention in the same register, reducing overall device complexity.

Inventive Principle:
Principle #5Merging (Combining)

3Productivity

If operand data is retained in registers across instructions, then computing efficiency is improved, but power consumption increases

Engineering Contradiction:
Improvecomputing efficiencyVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The operand register automatically manages data retention without requiring active control signals or additional power-consuming retention mechanisms. The register's natural holding capability is leveraged, eliminating the need for extra power-intensive control logic.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The retention control logic is extracted from the system by utilizing the inherent data-holding capability of the register itself. This removes the need for additional control circuits that would consume power, as the register naturally maintains its value without external intervention.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS11620132B2Reusing an operand received from a first-in-first-out (FIFO) buffer according to an operand specifier value specified in a predefined field of an instruction
Publication Date: 2023.04.04 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11620132B2 patent drawing
  • US11620132B2 patent drawing
  • US11620132B2 patent drawing

AI summary

Various embodiments are provided reusing an operand in an instruction set architecture (ISA) by one or more processors in a computing system. An instruction may specify that an operand register for a selected operand retain operand data used by a previous instruction. The operand data in the operand register may be reused by the instruction.