Marshall Lochbaum
|
8a2190b092
|
64-bit hashes with float normalization
|
2023-11-07 14:54:16 -05:00 |
|
Marshall Lochbaum
|
a4290b1f5c
|
Shortcut for hash-table dyadic ⊒
|
2023-11-07 09:59:53 -05:00 |
|
Marshall Lochbaum
|
4bf4149d40
|
Use hash deletion for forward ⊒ as well as reverse
|
2023-11-07 09:41:50 -05:00 |
|
Marshall Lochbaum
|
289658a59c
|
Delete hash entry as soon as it's cleared, not on next access
|
2023-11-07 07:53:45 -05:00 |
|
Marshall Lochbaum
|
30331eb800
|
Fix write off end for reverse ⊒
|
2023-11-07 07:15:17 -05:00 |
|
Marshall Lochbaum
|
c042fe6ca3
|
Vector binary search for integer Index-of
|
2023-11-06 15:43:26 -05:00 |
|
Marshall Lochbaum
|
d154ece51a
|
Vector binary search for 16-bit Member-of in addition to 32 (8 is too slow)
|
2023-11-06 09:37:58 -05:00 |
|
Marshall Lochbaum
|
11245d385e
|
Vector binary search Member-of
|
2023-11-05 22:10:39 -05:00 |
|
Marshall Lochbaum
|
75aed91f32
|
And max offset of 8 by testing two vectors
|
2023-11-05 15:46:26 -05:00 |
|
Marshall Lochbaum
|
ec31543604
|
Vector Member-of search up to an offset of 4
|
2023-11-05 15:45:07 -05:00 |
|
Marshall Lochbaum
|
af81da50e4
|
Don't need to initialize indices for hashed Index-of
|
2023-11-04 17:52:22 -04:00 |
|
Marshall Lochbaum
|
1286ee32ec
|
Reverse lookup for hashed Progressive Index-of
|
2023-11-03 21:58:17 -04:00 |
|
Marshall Lochbaum
|
84f3205547
|
Use a larger initial hash table if non-hashed argument is large
|
2023-11-03 21:50:38 -04:00 |
|
Marshall Lochbaum
|
a9f33c1454
|
Refactoring
|
2023-11-03 16:38:08 -04:00 |
|
Marshall Lochbaum
|
8aa6c07199
|
And hashed 32-bit Progressive Index-of
|
2023-11-02 20:29:54 -04:00 |
|
Marshall Lochbaum
|
64f2a10fbb
|
Return hash_resize{} from hash_alloc{}
|
2023-11-02 13:21:11 -04:00 |
|
Marshall Lochbaum
|
d54621b5dd
|
Extend hash table to 32-bit Index-of
|
2023-11-02 12:00:32 -04:00 |
|
Marshall Lochbaum
|
ed03720441
|
Robin Hood hash table for 32-bit membership
|
2023-11-01 15:46:45 -04:00 |
|
Marshall Lochbaum
|
cb8be206be
|
Move hash allocation to a generator
|
2023-10-31 22:09:11 -04:00 |
|
Marshall Lochbaum
|
ee856a4880
|
Move hash resizing to a generator, and other refactoring
|
2023-10-31 22:09:11 -04:00 |
|
Marshall Lochbaum
|
0fb845d336
|
Move self-search hash table code to Singeli
|
2023-10-31 22:09:11 -04:00 |
|
dzaima
|
9c68e67544
|
fix compilation error when targeting AVX1-only
|
2023-10-07 13:22:27 +03:00 |
|
Marshall Lochbaum
|
6330d61a88
|
Some rearrangement and minor simplifications
|
2023-09-12 10:24:00 -04:00 |
|
Marshall Lochbaum
|
72da47d48a
|
Use standard for loops
|
2023-09-12 09:12:57 -04:00 |
|
Marshall Lochbaum
|
40ed55bc43
|
Use built-in NEON include for basic vector instructions
|
2023-09-11 21:17:38 -04:00 |
|
Marshall Lochbaum
|
7b9f7ba331
|
Move x86 vector and NEON includes into base.singeli
|
2023-09-11 20:25:25 -04:00 |
|
Marshall Lochbaum
|
082f800b3e
|
Combine x86 vector extensions and use iintrinsic/basic when possible
|
2023-09-11 20:11:16 -04:00 |
|
Marshall Lochbaum
|
c85ca66dae
|
Unify Scan and Bins min-scan code
|
2023-08-26 09:27:59 -04:00 |
|
Marshall Lochbaum
|
0a30fb309d
|
SSE2 min- and max-scans
|
2023-08-26 07:26:33 -04:00 |
|
Marshall Lochbaum
|
a040a14744
|
Unify power-of-two shift pattern for scans
|
2023-08-26 07:26:33 -04:00 |
|
Marshall Lochbaum
|
d16ba6c3b1
|
Move xor-scan to scan.singeli; remove neq.singeli
|
2023-08-26 07:26:33 -04:00 |
|
Marshall Lochbaum
|
e261e80168
|
SSE min/max and pluswrap scans
|
2023-08-26 07:26:33 -04:00 |
|
Marshall Lochbaum
|
f9a4a5b68c
|
Remove duplicated SSE4.1 min/max bindings
|
2023-08-26 07:26:33 -04:00 |
|
Marshall Lochbaum
|
00c454d37a
|
Add generic-architecture versions of Singeli scans
|
2023-08-26 07:26:33 -04:00 |
|
dzaima
|
34d4fd6433
|
more explicit loadu/storeu
|
2023-08-20 00:18:09 +03:00 |
|
dzaima
|
4d19654e3b
|
fix store types
|
2023-08-16 19:01:04 +03:00 |
|
dzaima
|
acca5c0c7c
|
fix completely wrong dyTable lookup
|
2023-08-15 14:45:27 +03:00 |
|
Marshall Lochbaum
|
4e9745688b
|
Use generic boolean Compress as the sparse case with Singeli
|
2023-08-07 13:47:58 -04:00 |
|
Marshall Lochbaum
|
bbad98bce1
|
In AVX2 boolean Compress, jump from 8 to 32 with 32-bit shifts
|
2023-08-07 11:41:53 -04:00 |
|
Marshall Lochbaum
|
120df26814
|
mullo works for both signed and unsigned
|
2023-08-07 11:23:38 -04:00 |
|
Marshall Lochbaum
|
d039562efe
|
Fix disabled BMI2 boolean Compress; cleaner SIMD width system
|
2023-08-06 08:09:08 -04:00 |
|
Marshall Lochbaum
|
9046dd6b53
|
Handle boolean Compress SIMD tail with conditional write, not scalar loop
|
2023-08-06 08:03:14 -04:00 |
|
Marshall Lochbaum
|
07ace41d6c
|
Vectorized version of the clmul boolean Compress
|
2023-08-06 07:36:05 -04:00 |
|
Marshall Lochbaum
|
371aa6f2ef
|
AVX2 boolean Compress using variable shifts
|
2023-08-05 21:50:22 -04:00 |
|
Marshall Lochbaum
|
66c0fe041c
|
Get pext and popcount together, since generic pext emulation includes popc
|
2023-08-05 20:38:54 -04:00 |
|
Marshall Lochbaum
|
056b18edd2
|
Move pext-based compress loop from C to Singeli
|
2023-08-05 20:38:54 -04:00 |
|
Marshall Lochbaum
|
e09d385df5
|
Simplify pairwise pext implementation; drop 12-bit as no longer competitive
|
2023-08-05 20:38:54 -04:00 |
|
dzaima
|
0b6c5189d8
|
move arithdDispatch declarations to a header
+ rename some things to make more sense
|
2023-07-31 20:26:05 +03:00 |
|
dzaima
|
0d7de8b190
|
define ux in Singeli, replacing Size; return ux from popc/clz/ctz
|
2023-07-26 17:42:23 +03:00 |
|
dzaima
|
f7a0eb94a3
|
don't use AVX2 buffer copying for a 16-byte buffer
|
2023-07-22 21:34:20 +03:00 |
|