類 Fp16Conversions
- java.lang.Object
-
- ai.onnxruntime.platform.Fp16Conversions
-
public final class Fp16Conversions extends java.lang.Objectfp16、bfloat16 和 fp32 之間的轉換。
-
-
方法摘要
所有方法 靜態方法 具體方法 修飾符和型別 方法 描述 static floatbf16ToFloat(short input)將儲存在 short 中的 bf16 值轉換為 float 值。static java.nio.FloatBufferconvertBf16BufferToFloatBuffer(java.nio.ShortBuffer buf)將儲存為 short 的 bf16 值緩衝區轉換為 float 緩衝區。static java.nio.ShortBufferconvertFloatBufferToBf16Buffer(java.nio.FloatBuffer buf)將 float 緩衝區舍入為包含 bf16 值(在 Java 中儲存為 short)的緩衝區。static java.nio.ShortBufferconvertFloatBufferToFp16Buffer(java.nio.FloatBuffer buf)將 float 緩衝區舍入為包含 fp16 值(在 Java 中儲存為 short)的緩衝區。static java.nio.FloatBufferconvertFp16BufferToFloatBuffer(java.nio.ShortBuffer buf)將儲存為 short 的 fp16 值緩衝區轉換為 float 緩衝區。static shortfloatToBf16(float input)將 float 轉換為 bf16。static shortfloatToFp16(float input)將 float 值轉換為儲存在 short 中的 fp16 值。static floatfp16ToFloat(short input)將儲存在 short 中的 fp16 值轉換為 float 值。static shortmlasFloatToFp16(float input)將 float 值舍入為 fp16。static floatmlasFp16ToFloat(short input)將 fp16 值向上轉換為 float。
-
-
-
方法詳細資訊
-
convertFloatBufferToFp16Buffer
public static java.nio.ShortBuffer convertFloatBufferToFp16Buffer(java.nio.FloatBuffer buf)
將 float 緩衝區舍入為包含 fp16 值(在 Java 中儲存為 short)的緩衝區。遵守輸入緩衝區的 position 和 limit。
- 引數
buf- float 緩衝區。- 返回
- 儲存為 short 的 fp16 值緩衝區。
-
convertFp16BufferToFloatBuffer
public static java.nio.FloatBuffer convertFp16BufferToFloatBuffer(java.nio.ShortBuffer buf)
將儲存為 short 的 fp16 值緩衝區轉換為 float 緩衝區。遵守輸入緩衝區的 position 和 limit。
- 引數
buf- 儲存為 short 的 fp16 值緩衝區。- 返回
- float 值緩衝區。
-
convertFloatBufferToBf16Buffer
public static java.nio.ShortBuffer convertFloatBufferToBf16Buffer(java.nio.FloatBuffer buf)
將 float 緩衝區舍入為包含 bf16 值(在 Java 中儲存為 short)的緩衝區。遵守輸入緩衝區的 position 和 limit。
- 引數
buf- float 緩衝區。- 返回
- 儲存為 short 的 bf16 值緩衝區。
-
convertBf16BufferToFloatBuffer
public static java.nio.FloatBuffer convertBf16BufferToFloatBuffer(java.nio.ShortBuffer buf)
將儲存為 short 的 bf16 值緩衝區轉換為 float 緩衝區。遵守輸入緩衝區的 position 和 limit。
- 引數
buf- 儲存為 short 的 bf16 值緩衝區。- 返回
- float 值緩衝區。
-
fp16ToFloat
public static float fp16ToFloat(short input)
將儲存在 short 中的 fp16 值轉換為 float 值。注意:在 Java 20 或更新版本中,此方法使用
Float.float16ToFloat,它可能使用 CPU 特定的指令進行轉換,否則它使用 ORT 本地實現的轉換操作。- 引數
input- fp16 值。- 返回
- float 值。
-
floatToFp16
public static short floatToFp16(float input)
將 float 值轉換為儲存在 short 中的 fp16 值。注意:在 Java 20 或更新版本中,此方法使用
Float.floatToFloat16,它可能使用 CPU 特定的指令進行轉換,否則它使用 ORT 本地實現的轉換操作。- 引數
input- float 值。- 返回
- fp16 值。
-
mlasFp16ToFloat
public static float mlasFp16ToFloat(short input)
將 fp16 值向上轉換為 float。與 MLAS 中的轉換相對應。- 引數
input- 表示 IEEE 半精度 float 的 uint16_t。- 返回
- float 值。
-
mlasFloatToFp16
public static short mlasFloatToFp16(float input)
將 float 值舍入為 fp16。與 MLAS 中的轉換相對應。- 引數
input- float 值。- 返回
- 舍入為 IEEE 半精度值的值。
-
bf16ToFloat
public static float bf16ToFloat(short input)
將儲存在 short 中的 bf16 值轉換為 float 值。- 引數
input- 表示 bfloat16 值的 uint16_t。- 返回
- float 值。
-
floatToBf16
public static short floatToBf16(float input)
將 float 轉換為 bf16。對於次正規 float,可能不會生成正確的值。舍入到最近的偶數。
- 引數
input- float 輸入。- 返回
- 最接近 float 的 bfloat16 值。
-
-