Commit Graph

3644 Commits

Author SHA1 Message Date
dzaima
37911af67a show Singeli show{}s even when erroring 2025-03-13 23:41:46 +02:00
dzaima
9023f6fe3b
Merge pull request #138 from mlochbaum/groupstat
Faster initial index scanning for Group
2025-03-13 23:37:44 +02:00
dzaima
82ebd37b3f group statistics test 2025-03-13 23:36:02 +02:00
Marshall Lochbaum
233c88120d Singeli function for initial group statistics pass since auto-vectorization isn't great 2025-03-13 14:21:38 -04:00
dzaima
72c4eca6c0 fix float ⌾(l⊸⊏) doing wrong comparisons 2025-03-12 17:23:17 +02:00
dzaima
d48194c3c8 fix comment 2025-03-12 17:20:18 +02:00
dzaima
7a412523dd better SSE2 float getRange 2025-03-12 16:38:20 +02:00
dzaima
62b095be89 oneElt⊏𝕩 improvements & fixes 2025-03-12 06:29:26 +02:00
dzaima
3ae7d134d2 more uniform F¨ fill behavior 2025-03-12 05:52:52 +02:00
dzaima
b14ea82218 accept two error messages for 2⋆63 test
boils down to an arch-dependent difference in q_fi64, which I can't do much about
2025-03-12 04:21:28 +02:00
dzaima
a013eb094e select_fn doesn't require SIMD anymore
it's not used too much without SIMD extensions available, but it is used a bit
2025-03-12 04:20:53 +02:00
dzaima
bfce527096 fix 𝕗⌾(-2⋆63)𝕩 2025-03-12 03:01:11 +02:00
dzaima
e33b3b95ee relax documented RangeFn behavior to align with NEON impl 2025-03-12 02:10:05 +02:00
dzaima
a6202c8ca6 fix error message of ⌾(oob⊸⊏) 2025-03-12 01:41:52 +02:00
dzaima
0848faf8c7 don't leak memory in TEST_RANGE 2025-03-12 01:14:24 +02:00
dzaima
76fc956e7c note about test_range test needing a specific build 2025-03-12 01:04:19 +02:00
dzaima
5f5bb37a92 fix builtin function comparison on ALL_R1 2025-03-12 01:03:00 +02:00
dzaima
d2ca600e02 actually make try_first_hom return things 2025-03-12 00:20:49 +02:00
dzaima
85ef1038b8 fix usz=32 build 2025-03-11 23:41:11 +02:00
dzaima
cca858ceee test system improvements
- tolerate an existing ".bqn" in arguments
- actually assert test in fuzz/scan.bqn
2025-03-11 23:41:11 +02:00
dzaima
dfce405111
Merge pull request #137 from mlochbaum/scalreduce
Scalar-based arithmetic insert and stride-1 scan-cells for short rows
2025-03-11 19:23:57 +02:00
dzaima
f5fdd50f75 test alternating fills of ˝ 2025-03-11 04:39:34 +02:00
Marshall Lochbaum
dcecc70c25 More careful fill handling with characters in insert_scal 2025-03-10 21:58:15 -04:00
dzaima
97e0210c41 remove unnecessary F˜˘ acceptance from F˘
scan_rows_bit only checks frtid, which is 0 for such
2025-03-11 00:17:11 +02:00
dzaima
bcf32838f4 some more ˝ tests, use COPY_TO
not much of a difference, but prettier
2025-03-11 00:15:45 +02:00
Marshall Lochbaum
f1972fc408 Faster stride-1 check 2025-03-10 12:57:25 -04:00
Marshall Lochbaum
e42273bfe8 Generic stride-1 𝔽`˘ implementation 2025-03-10 12:50:54 -04:00
Marshall Lochbaum
bbe4549aff Scalar implementation of 𝔽˝ for generic arithmetic 𝔽 and short rows 2025-03-10 12:48:06 -04:00
dzaima
e09fb53fb9
Merge pull request #136 from mlochbaum/boolrep
Faster const/bool for 64<const≤256
2025-03-09 23:42:12 +02:00
Marshall Lochbaum
b69a2c2469 Move swtab outside of its function; it was being compiled as a dynamic array 2025-03-09 08:44:42 -04:00
Marshall Lochbaum
e898a81d68 Use a possibly-overlapping word and constant-length loop in k/bool, like ⊣` 2025-03-09 08:44:42 -04:00
Marshall Lochbaum
302c2f926f AVX2 k/bool for odd 64<k<256 using shift-based masks 2025-03-09 08:44:42 -04:00
dzaima
bd942894bf fix missing usage of unaligned store 2025-03-06 06:01:44 +02:00
dzaima
d5facc33ad some Singeli cleanup
shuf_ind's staying as such I guess; make it more clear when debug.singeli is left included
2025-03-06 05:32:22 +02:00
dzaima
bb3bb1b1d3
Merge pull request #135 from mlochbaum/scan
Optimize common high-rank scans
2025-03-06 05:18:07 +02:00
dzaima
6d7983fd48 test for scan overflow checking in tail 2025-03-06 04:02:32 +02:00
dzaima
267ddc4987 clarifying comments 2025-03-06 04:02:27 +02:00
dzaima
79fc8d5116 use direct copy on known-different-eltype arrays 2025-03-04 23:18:30 +02:00
dzaima
26cd40dfd3 tests for single-element-cell scans 2025-03-04 20:16:13 +02:00
Marshall Lochbaum
d9a80ee83b Test bound and length instead of rank in scan where possible 2025-03-04 10:59:40 -05:00
Marshall Lochbaum
a11ed3d79a Mask out values past the end for strided +` overflow checks 2025-03-04 07:39:28 -05:00
dzaima
9fdeb5379a fix old gcc 2025-03-04 04:04:04 +02:00
Marshall Lochbaum
010e6a10d4 Implementation comments for new high-rank scans 2025-03-03 19:56:53 -05:00
Marshall Lochbaum
46300bcb51 Use scalar case for small-stride +` on <SSSE3 to avoid incorrectly overlapping vectors 2025-03-03 08:15:47 -05:00
Marshall Lochbaum
4072bde806 Strided scan with AVX2 [8]i32 permute if possible 2025-03-03 08:14:17 -05:00
Marshall Lochbaum
180c79e751 Strided +`, widening and re-trying on overflow 2025-03-03 06:54:40 -05:00
Marshall Lochbaum
87a7d066c8 Strided ⌊⌈ scans with shuffles 2025-03-03 06:54:40 -05:00
Marshall Lochbaum
360e4e8320 Save a word instead of writing to avoid stall for scan with 64<stride<128 2025-03-03 06:54:40 -05:00
Marshall Lochbaum
f3e0ea7531 Use CLMUL-based ≠` for power-of-two stride up to 64 2025-03-03 06:54:40 -05:00
Marshall Lochbaum
ee6b91be8a Basic strided ∧∨≠= scan implementations 2025-03-03 06:54:40 -05:00