Marshall Lochbaum
|
d19df2693a
|
Merge 1-byte table code with normal bins_lookup
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
f36dc7adba
|
Use max-scan instead of plus-scan for 1-byte Bins table
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
8054597004
|
Handle up to 64 unique values in bit-table 1-byte Bins
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
b62bd02bc0
|
Precomputed midpoint bits in vector binary search
Clang already optimized to this but it's more explicit
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
7f5ba961c2
|
Use default bins_lookup if there's no AVX2
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
1080236433
|
2-byte vector binary searches
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
d665b90bbf
|
Slightly faster binary search pattern with a blend
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
a711eb72eb
|
Table-based 2-byte Bins, using max-scan
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
724f685a57
|
Cleanup
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
2c9e07f33d
|
1-byte Bins up to 32 unique eleemnts by unique lookup then index
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
81da9c586f
|
Table-based 1-byte Bins with >1-byte result
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
0346ff7c2d
|
Use type of ≠𝕨 for Singeli Bins result and allocate outside Singeli
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
e0621f99f8
|
Unroll vector binary searches for different search depths
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
38671e3fe9
|
Fast handling for length-1 𝕨 in Bins
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
ed9e8b4057
|
Table-based 1-byte Bins implementations, including AVX2
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
7161689196
|
Fix bin_search_vec over-writing
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
302d637129
|
Allocate binary search result in Singeli, using i8 for vectors
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
70249d8b64
|
In bins, promote to smallest common int type instead of i32
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
4f93b5849b
|
Fix shape of char⍋num result (was deshaped)
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
ec9b875503
|
Separate is-sorted check from Bins implementation
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
ff9919dde2
|
AVX2 binary search on one lane of i8 (unused for now)
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
5424c57b7e
|
Use Singeli float binary search
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
ee84f9fe1f
|
4-way branchless binary search unrolling
|
2023-07-10 07:13:21 -04:00 |
|
Marshall Lochbaum
|
464a53463d
|
Generic Singeli version of 32-bit binary search
|
2023-07-10 07:13:21 -04:00 |
|
dzaima
|
6b5815dcc2
|
fix shape of k/n‿1⥊1
|
2023-07-10 02:40:36 +03:00 |
|
dzaima
|
8975be082b
|
fix •ns.Get error message
|
2023-07-09 15:58:31 +03:00 |
|
dzaima
|
5c7934387a
|
update Singeli submodule, match{} → same{}
|
2023-06-29 15:19:57 +03:00 |
|
dzaima
|
a67a19dd0b
|
move pair{{a,b}} expanding to base.singeli
|
2023-06-29 01:31:58 +03:00 |
|
dzaima
|
4ee8dfbbda
|
update Singeli submodule, use destructuring parameters
|
2023-06-28 00:59:28 +03:00 |
|
dzaima
|
3ae9b14d64
|
separate arith inits, add comments on init order
|
2023-06-23 12:10:42 +03:00 |
|
dzaima
|
7618dce2f3
|
fix return value of overflowed dyadic arith
|
2023-06-23 12:10:42 +03:00 |
|
dzaima
|
5f43bf16b3
|
add direct typed array type test macro
|
2023-06-23 12:10:42 +03:00 |
|
dzaima
|
4dbe72ae03
|
properly indicate estimating Singeli instructions
|
2023-06-23 11:51:34 +03:00 |
|
dzaima
|
8f8380749b
|
generic Singeli builds
|
2023-06-16 11:12:15 +03:00 |
|
dzaima
|
5032c9a3ab
|
remove unnecessary 'over _ to'
|
2023-06-15 19:12:20 +03:00 |
|
dzaima
|
90e7537225
|
move maskedLoopPositive to @-based
|
2023-06-15 19:09:53 +03:00 |
|
dzaima
|
dee29a1a02
|
block → iter
|
2023-06-15 18:11:57 +03:00 |
|
dzaima
|
9da567cd57
|
switch to new Singeli block execution
|
2023-06-15 18:08:57 +03:00 |
|
dzaima
|
2da457dafa
|
fix el_half
|
2023-06-15 00:32:19 +03:00 |
|
dzaima
|
4260ef93b3
|
rename away underscores in __adds and __subs
plus add NEON addw, subw, and mulw (which is renamed from mul1)
|
2023-06-12 00:52:09 +03:00 |
|
dzaima
|
2a52dff482
|
@-forms of maskedLoop and muLoop
|
2023-06-12 00:52:09 +03:00 |
|
dzaima
|
fe8892ce6c
|
rearrange shrm/shlm args, slightly better NEON homMask{[16]u8}
|
2023-06-12 00:52:09 +03:00 |
|
dzaima
|
336f986986
|
change error messages in ◶
|
2023-06-12 00:52:09 +03:00 |
|
dzaima
|
8542ba071d
|
homMaskX, merging multi-arg homMask
|
2023-06-07 18:14:18 +03:00 |
|
dzaima
|
934a2b5ae3
|
rearrange things
|
2023-06-06 21:44:50 +03:00 |
|
dzaima
|
087bf06cac
|
fix type warnings
|
2023-06-01 20:12:51 +03:00 |
|
dzaima
|
efa1c4a4ff
|
__declspec(dllexport)
|
2023-06-01 19:04:34 +03:00 |
|
dzaima
|
78bef5fe32
|
consistent 𝕨⊏𝕩 error messages across argument types
|
2023-05-30 14:28:36 +03:00 |
|
dzaima
|
2eb12fef82
|
fix replxx under os=windows
|
2023-05-30 13:37:15 +03:00 |
|
dzaima
|
7e5b2e0557
|
don't unroll/vectorize extremely tiny loop
|
2023-05-30 12:52:17 +03:00 |
|