MCPcopy Create free account
hub / github.com/bitsandbytes-foundation/bitsandbytes / dDequantizeFP4

Function dDequantizeFP4

csrc/xpu_kernels.cpp:8–48  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

6#include <sycl/sycl.hpp>
7
8inline float dDequantizeFP4(unsigned char val) {
9 if ((val & 0b1000) == 8)
10 if ((val & 0b0100) == 4)
11 if ((val & 0b0010) == 2)
12 if ((val & 0b0001) == 1)
13 return -0.25000000f;
14 else
15 return -0.16666667f;
16 else if ((val & 0b0001) == 1)
17 return -0.50000000f;
18 else
19 return -0.33333333f;
20 else if ((val & 0b0010) == 2)
21 if ((val & 0b0001) == 1)
22 return -1.00000000f;
23 else
24 return -0.66666667f;
25 else if ((val & 0b0001) == 1)
26 return -5.208333333e-03f;
27 else
28 return 0.00000000f;
29 else if ((val & 0b0100) == 4)
30 if ((val & 0b0010) == 2)
31 if ((val & 0b0001) == 1)
32 return 0.25000000f;
33 else
34 return 0.16666667f;
35 else if ((val & 0b0001) == 1)
36 return 0.50000000f;
37 else
38 return 0.33333333f;
39 else if ((val & 0b0010) == 2)
40 if ((val & 0b0001) == 1)
41 return 1.00000000f;
42 else
43 return 0.66666667f;
44 else if ((val & 0b0001) == 1)
45 return 5.208333333e-03f;
46 else
47 return 0.00000000f;
48}
49
50inline float dDequantizeNF4(unsigned char val) {
51

Callers 1

operator()Method · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected