Vector FP32-to-BF16 Conversion Instructions for Lower Memory Use

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing technologies face challenges in efficiently converting single-precision floating-point data to 16-bit floating-point format, particularly in applications requiring data parallelism, leading to suboptimal memory utilization and performance.

Innovation Solution

The introduction of vector packed data format-convert instructions (VCVTNEPS2BF16 and VCVTNE2PS2BF16) that facilitate the conversion of single-precision elements to 16-bit floating-point format, utilizing truncation and rounding, while maintaining balanced operand storage in vector registers, thereby reducing memory requirements and improving performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If single-precision floating-point data is used, then computational precision is maintained, but memory utilization increases and power efficiency deteriorates

Engineering Contradiction:
Improvecomputational precisionVSAvoidpower efficiency
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent segments the floating-point data representation into different precision formats (single-precision and 16-bit floating-point) and allows selective conversion between them. This enables applications to use lower precision (16-bit) where sufficient, reducing memory bandwidth and power consumption, while maintaining single-precision where needed for computational accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the precision parameter of floating-point data from 32-bit single-precision to 16-bit floating-point format through dedicated conversion instructions. This parameter change reduces the data size by half, thereby reducing memory utilization and power efficiency improvements while maintaining acceptable computational quality for many applications.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If single-precision floating-point data is used, then computational precision is maintained, but memory utilization increases

Engineering Contradiction:
Improvecomputational precisionVSAvoidmemory utilization
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent segments data into different precision formats allowing selective use of 16-bit floating-point representation for data where full single-precision is not required. This segmentation enables reduced memory utilization while maintaining sufficient precision for the specific application requirements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies parameter changes by converting the precision parameter from 32-bit to 16-bit floating-point format. This reduces the quantity of data stored and transferred in memory by 50%, directly addressing the memory utilization issue while preserving acceptable computational precision.

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If conversion to 16-bit floating-point format is implemented, then memory utilization is reduced, but computational precision may be lost

Engineering Contradiction:
Improvememory utilizationVSAvoidcomputational precision
Core Design Contradiction:
Quantity of substanceVSMeasurement precision

Solution Approach 1:

The patent implements controlled parameter changes by providing explicit conversion instructions that transform single-precision floating-point data to 16-bit format with specified rounding behavior. This allows the system to accept calculated precision loss in exchange for significant memory utilization reduction, with the conversion being explicit and controllable.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent applies partial action by converting only those data elements that can tolerate 16-bit precision, rather than universally converting all floating-point data. This selective approach maintains computational precision where needed while reducing memory utilization where 16-bit precision is sufficient.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentEP3651019B1Systems and methods for performing instructions to convert to 16-bit floating-point format
Publication Date: 2026.01.21 INTEL CORP
  • EP3651019B1 patent drawingFigure 1
  • EP3651019B1 patent drawingFigure 2A
  • EP3651019B1 patent drawingFigure 2B

AI summary

Disclosed embodiments relate to systems and methods for performing instructions to convert to 16-bit floating-point format. In one example, a processor includes fetch circuitry to fetch an instruction having fields to specify an opcode and locations of a first source vector comprising N single-precision elements, and a destination vector comprising at least N 16-bit floating-point elements, the opcode to indicate execution circuitry is to convert each of the elements of the specified source vector to 16-bit floating-point, the conversion to include truncation and rounding, as necessary, and to store each converted element into a corresponding location of the specified destination vector, decode circuitry to decode the fetched instruction, and execution circuitry to respond to the decoded instruction as specified by the opcode.