Class ForUtil
java.lang.Object
org.apache.lucene.backward_codecs.lucene84.ForUtil
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) static final intprivate static final intprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final longprivate static final long[]private static final long[]private static final long[]private final long[] -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static voidcollapse16(long[] arr) private static voidcollapse32(long[] arr) private static voidcollapse8(long[] arr) (package private) voidDecode 128 integers intolongs.private static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static voidprivate static void(package private) voiddecodeAndPrefixSum(int bitsPerValue, DataInput in, long base, long[] longs) Delta-decode 128 integers intolongs.private static voiddecodeSlow(int bitsPerValue, DataInput in, long[] tmp, long[] longs) (package private) voidencode(long[] longs, int bitsPerValue, DataOutput out) Encode 128 integers fromlongsintoout.private static voidexpand16(long[] arr) private static voidexpand16To32(long[] arr) private static voidexpand32(long[] arr) private static voidexpand8(long[] arr) private static voidexpand8To32(long[] arr) private static longexpandMask16(long mask16) private static longexpandMask32(long mask32) private static longexpandMask8(long mask8) private static voidinnerPrefixSum32(long[] arr) private static longmask16(int bitsPerValue) private static longmask32(int bitsPerValue) private static longmask8(int bitsPerValue) (package private) intnumBytes(int bitsPerValue) Number of bytes required to encode 128 integers ofbitsPerValuebits per value.private static voidprefixSum16(long[] arr, long base) private static voidprefixSum32(long[] arr, long base) private static voidprefixSum8(long[] arr, long base) private static voidreadLELongs(DataInput in, long[] dst, int offset, int length) private static voidshiftLongs(long[] a, int count, long[] b, int bi, int shift, long mask) The pattern that this shiftLongs method applies is recognized by the C2 compiler, which generates SIMD instructions for it in order to shift multiple longs at once.
-
Field Details
-
BLOCK_SIZE
static final int BLOCK_SIZE- See Also:
-
BLOCK_SIZE_LOG2
private static final int BLOCK_SIZE_LOG2- See Also:
-
tmp
private final long[] tmp -
MASKS8
private static final long[] MASKS8 -
MASKS16
private static final long[] MASKS16 -
MASKS32
private static final long[] MASKS32 -
MASK8_1
private static final long MASK8_1 -
MASK8_2
private static final long MASK8_2 -
MASK8_3
private static final long MASK8_3 -
MASK8_4
private static final long MASK8_4 -
MASK8_5
private static final long MASK8_5 -
MASK8_6
private static final long MASK8_6 -
MASK8_7
private static final long MASK8_7 -
MASK16_1
private static final long MASK16_1 -
MASK16_2
private static final long MASK16_2 -
MASK16_3
private static final long MASK16_3 -
MASK16_4
private static final long MASK16_4 -
MASK16_5
private static final long MASK16_5 -
MASK16_6
private static final long MASK16_6 -
MASK16_7
private static final long MASK16_7 -
MASK16_9
private static final long MASK16_9 -
MASK16_10
private static final long MASK16_10 -
MASK16_11
private static final long MASK16_11 -
MASK16_12
private static final long MASK16_12 -
MASK16_13
private static final long MASK16_13 -
MASK16_14
private static final long MASK16_14 -
MASK16_15
private static final long MASK16_15 -
MASK32_1
private static final long MASK32_1 -
MASK32_2
private static final long MASK32_2 -
MASK32_3
private static final long MASK32_3 -
MASK32_4
private static final long MASK32_4 -
MASK32_5
private static final long MASK32_5 -
MASK32_6
private static final long MASK32_6 -
MASK32_7
private static final long MASK32_7 -
MASK32_8
private static final long MASK32_8 -
MASK32_9
private static final long MASK32_9 -
MASK32_10
private static final long MASK32_10 -
MASK32_11
private static final long MASK32_11 -
MASK32_12
private static final long MASK32_12 -
MASK32_13
private static final long MASK32_13 -
MASK32_14
private static final long MASK32_14 -
MASK32_15
private static final long MASK32_15 -
MASK32_17
private static final long MASK32_17 -
MASK32_18
private static final long MASK32_18 -
MASK32_19
private static final long MASK32_19 -
MASK32_20
private static final long MASK32_20 -
MASK32_21
private static final long MASK32_21 -
MASK32_22
private static final long MASK32_22 -
MASK32_23
private static final long MASK32_23 -
MASK32_24
private static final long MASK32_24
-
-
Constructor Details
-
ForUtil
ForUtil()
-
-
Method Details
-
expandMask32
private static long expandMask32(long mask32) -
expandMask16
private static long expandMask16(long mask16) -
expandMask8
private static long expandMask8(long mask8) -
mask32
private static long mask32(int bitsPerValue) -
mask16
private static long mask16(int bitsPerValue) -
mask8
private static long mask8(int bitsPerValue) -
expand8
private static void expand8(long[] arr) -
expand8To32
private static void expand8To32(long[] arr) -
collapse8
private static void collapse8(long[] arr) -
expand16
private static void expand16(long[] arr) -
expand16To32
private static void expand16To32(long[] arr) -
collapse16
private static void collapse16(long[] arr) -
expand32
private static void expand32(long[] arr) -
collapse32
private static void collapse32(long[] arr) -
prefixSum8
private static void prefixSum8(long[] arr, long base) -
prefixSum16
private static void prefixSum16(long[] arr, long base) -
prefixSum32
private static void prefixSum32(long[] arr, long base) -
innerPrefixSum32
private static void innerPrefixSum32(long[] arr) -
readLELongs
private static void readLELongs(DataInput in, long[] dst, int offset, int length) throws IOException - Throws:
IOException
-
encode
Encode 128 integers fromlongsintoout.- Throws:
IOException
-
numBytes
Number of bytes required to encode 128 integers ofbitsPerValuebits per value.- Throws:
IOException
-
decodeSlow
private static void decodeSlow(int bitsPerValue, DataInput in, long[] tmp, long[] longs) throws IOException - Throws:
IOException
-
shiftLongs
private static void shiftLongs(long[] a, int count, long[] b, int bi, int shift, long mask) The pattern that this shiftLongs method applies is recognized by the C2 compiler, which generates SIMD instructions for it in order to shift multiple longs at once. -
decode
Decode 128 integers intolongs.- Throws:
IOException
-
decodeAndPrefixSum
Delta-decode 128 integers intolongs.- Throws:
IOException
-
decode1
- Throws:
IOException
-
decode2
- Throws:
IOException
-
decode3
- Throws:
IOException
-
decode4
- Throws:
IOException
-
decode5
- Throws:
IOException
-
decode6
- Throws:
IOException
-
decode7
- Throws:
IOException
-
decode8
- Throws:
IOException
-
decode9
- Throws:
IOException
-
decode10
- Throws:
IOException
-
decode11
- Throws:
IOException
-
decode12
- Throws:
IOException
-
decode13
- Throws:
IOException
-
decode14
- Throws:
IOException
-
decode15
- Throws:
IOException
-
decode16
- Throws:
IOException
-
decode17
- Throws:
IOException
-
decode18
- Throws:
IOException
-
decode19
- Throws:
IOException
-
decode20
- Throws:
IOException
-
decode21
- Throws:
IOException
-
decode22
- Throws:
IOException
-
decode23
- Throws:
IOException
-
decode24
- Throws:
IOException
-