FP8 Conversion Instructions for Faster BF8/HF8 to FP16/FP32 Upcasting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current technologies lack efficient instructions for converting 8-bit floating-point formats (BF8/HF8) to 16-bit or 32-bit IEEE floating-point formats, leading to slow execution and memory bandwidth issues, particularly when trying to upconvert from BF8/HF8 to IEEE Float 16/Float 32.

Innovation Solution

The introduction of instruction families such as VCVTBF82PH/VCVTHF82PH/VCVTBF82PS/VCVTHF82PS, which convert BF8/HF8 to IEEE float16/float32, allowing for vector or scalar conversions with optional variable floating-point exponent bias, enabling hardware-assisted conversions that bypass software and OS layers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If software-based conversion methods are used to convert BF8/HF8 to IEEE float16/float32, then conversion functionality is achieved, but execution time increases and processing speed decreases

Engineering Contradiction:
Improveconversion speedVSAvoidexecution time
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent replaces software-based conversion mechanisms with hardware-based conversion circuits integrated into the processor. The conversion is performed by dedicated hardware logic that directly transforms BF8/HF8 format data to IEEE float16/float32 format, eliminating the need for software interpretation and execution, thereby dramatically improving conversion speed and reducing execution time.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Quantity of substance

If FP8 format is used to reduce memory usage and bandwidth, then memory efficiency improves, but conversion to standard formats becomes a bottleneck

Engineering Contradiction:
Improvememory bandwidthVSAvoidconversion throughput
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent implements conversion capability directly in the hardware processing path, allowing FP8 data to be converted to IEEE formats on-the-fly during processing operations. This preliminary hardware preparation eliminates the need for separate conversion steps that would otherwise bottleneck memory bandwidth utilization, enabling efficient data flow from compact FP8 storage to standard IEEE formats when needed.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20240045686A1Instructions to convert from FP8
Publication Date: 2024.02.08 INTEL CORP
  • US20240045686A1 patent drawing
  • US20240045686A1 patent drawing
  • US20240045686A1 patent drawing

AI summary

Techniques for converting FP8 data elements to FP16 or FP32 data elements using a single instruction are described. An example apparatus includes decoder circuitry to decode a single instruction, the single instruction to indicate that execution circuitry is to convert packed FP8 data from the identified source to packed half-precision floating-point data or single-precision floating point data and store the packed half-precision floating-point data or single-precision floating point data into corresponding data element positions of the identified destination operand.