11 #include <boost/assert.hpp> 18 void* dstFloat16Buffer)
20 BOOST_ASSERT(srcFloat32Buffer !=
nullptr);
21 BOOST_ASSERT(dstFloat16Buffer !=
nullptr);
25 for (
size_t i = 0; i < numElements; i++)
33 float* dstFloat32Buffer)
35 BOOST_ASSERT(srcFloat16Buffer !=
nullptr);
36 BOOST_ASSERT(dstFloat32Buffer !=
nullptr);
40 for (
size_t i = 0; i < numElements; i++)
42 dstFloat32Buffer[i] = pHalf[i];
48 void* dstBFloat16Buffer)
50 BOOST_ASSERT(srcFloat32Buffer !=
nullptr);
51 BOOST_ASSERT(dstBFloat16Buffer !=
nullptr);
55 for (
size_t i = 0; i < numElements; i++)
63 float* dstFloat32Buffer)
65 BOOST_ASSERT(srcBFloat16Buffer !=
nullptr);
66 BOOST_ASSERT(dstFloat32Buffer !=
nullptr);
70 for (
size_t i = 0; i < numElements; i++)
72 dstFloat32Buffer[i] = bf16[i].
ToFloat32();
static void ConvertBFloat16ToFloat32(const void *srcBFloat16Buffer, size_t numElements, float *dstFloat32Buffer)
static void ConvertFloat32To16(const float *srcFloat32Buffer, size_t numElements, void *dstFloat16Buffer)
Converts a buffer of FP32 values to FP16, and stores in the given dstFloat16Buffer.
static void ConvertFloat16To32(const void *srcFloat16Buffer, size_t numElements, float *dstFloat32Buffer)
static void ConvertFloat32ToBFloat16(const float *srcFloat32Buffer, size_t numElements, void *dstBFloat16Buffer)