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 |
|
Marshall Lochbaum
|
90d0f3015a
|
Use rank-1 scan special code whenever cell size is 1
|
2025-03-03 06:54:40 -05:00 |
|
Marshall Lochbaum
|
b03b26656d
|
Fix usz=32 build
|
2025-03-03 06:54:40 -05:00 |
|
dzaima
|
d3b4c3cc26
|
flush stdout on •Show and •Out
|
2025-03-03 00:53:55 +02:00 |
|
dzaima
|
db6118489d
|
make make install work on macos
|
2025-03-03 00:24:12 +02:00 |
|
dzaima
|
9eeee12d53
|
add shared-o3n make target
|
2025-03-02 23:51:43 +02:00 |
|
dzaima
|
05a9cd736b
|
more spaces around names between name and 𝕨/𝕩 in error messages
|
2025-03-02 19:57:38 +02:00 |
|
dzaima
|
bdf9a52625
|
more proper error messages for /⁼𝕩
|
2025-03-02 19:50:01 +02:00 |
|
dzaima
|
17ec5f0a8a
|
add 𝕩 to error messages of <⁼𝕩, ⋈⁼𝕩, ≍⁼𝕩
|
2025-03-02 19:32:49 +02:00 |
|
dzaima
|
445007b38c
|
unify toLast and broadcast_last
|
2025-03-02 19:31:03 +02:00 |
|
dzaima
|
9826c4ce0e
|
add 𝕨/𝕩 in dyadic ⌽/⌽⁼ error message
|
2025-03-02 19:29:49 +02:00 |
|
dzaima
|
bdee96a995
|
remove old blend definitions
|
2025-02-27 05:49:16 +02:00 |
|
dzaima
|
8055f8dbab
|
Merge pull request #134 from mlochbaum/scan
Better row width and arch coverage for boolean scans
|
2025-02-27 05:48:02 +02:00 |
|
Marshall Lochbaum
|
eda1cd8b50
|
More tuning based on dzaima's measurements
|
2025-02-26 22:01:37 -05:00 |
|
Marshall Lochbaum
|
a520ff70a1
|
Fix some NEON performance issues for row scans
|
2025-02-26 21:52:49 -05:00 |
|
Marshall Lochbaum
|
a775520927
|
Update scan implementation comments
|
2025-02-26 08:21:22 -05:00 |
|
Marshall Lochbaum
|
422e63bc12
|
Non-CLMUL SIMD ≠`
|
2025-02-26 08:21:22 -05:00 |
|
Marshall Lochbaum
|
d85d69e759
|
Improve baseline for ⊣`˘ to beat non-AVX2 on length ≥64
|
2025-02-25 20:26:51 -05:00 |
|
Marshall Lochbaum
|
709712f03c
|
Tuning; drop the scalar loose_mask branch for ∧∨ as it never seems faster
|
2025-02-25 19:33:26 -05:00 |
|
Marshall Lochbaum
|
b5ec2f5fa8
|
Extend loose_mask system to SSE and NEON (not always fast)
|
2025-02-25 19:28:51 -05:00 |
|