dzaima
215a3cad3b
fix interleave_cells generic path
2024-09-13 19:39:08 +03:00
dzaima
8fd897690f
move customizeShape into stuff.h
2024-09-12 06:47:06 +03:00
dzaima
27b7c0746c
full interleave_cells
...
needed to make all rank-1 inputs work on non-Singeli builds, but beneficial in general anyway
2024-09-12 06:17:32 +03:00
dzaima
e9cf8ac330
fix try_interleave_cells on copying TO_BPTR
2024-09-12 05:40:11 +03:00
dzaima
c0e3a3711f
fast scalar≍˘arr & arr≍˘scalar & different-type arr≍˘arr
2024-09-12 05:38:34 +03:00
dzaima
03fbb17246
fix broken arr_bptr path in transpose_noshape
2024-09-09 17:55:26 +03:00
dzaima
5ef4fe828b
use customizeShape in transpose
2024-08-23 02:21:59 +03:00
dzaima
597fe07838
another incG
2024-08-15 17:36:43 +03:00
dzaima
5098781ffc
replace all bitarr_ptr usages with bitany_ptr
2024-08-15 17:36:43 +03:00
dzaima
88de336516
introduce bitany_ptr
...
+ more general typed arr pointer getting functions
2024-08-15 17:36:43 +03:00
dzaima
a9460da19c
more missing NEON comments
2024-08-14 05:18:13 +03:00
dzaima
f14583f995
faster ⍉ on large‿small⥊x
2024-05-22 20:07:48 +03:00
dzaima
875f9185bf
use ux a tiny bit more, add a PLAINLOOP
2024-02-27 00:37:47 +02:00
dzaima
592a8312ac
a bunch of PLAINLOOP
2024-02-01 21:26:08 +02:00
dzaima
c078f62b1f
add GLOBAL, INIT_GLOBAL, or const to globals
2024-02-01 21:13:39 +02:00
dzaima
041be9a612
rearrange elses to get rid of clangd warning
2024-01-28 02:29:03 +02:00
Marshall Lochbaum
dbb6fbade1
Fast interleaving (≍˘) for pointer arrays
2023-12-31 16:28:59 -05:00
Marshall Lochbaum
3584ebd7a6
Non-BMI2 bit interleaving implementation
2023-12-30 21:45:24 -05:00
Marshall Lochbaum
eb34213f0f
Fast ≍˘ for matching-type type-sized cells
2023-12-30 21:45:24 -05:00
dzaima
f037754880
more specific empty array types
2023-11-13 23:16:02 +02:00
dzaima
8c7a3be036
remove unused includes
2023-11-13 21:48:01 +02:00
dzaima
5efd90cc91
rename elWidthLogBits to something less long & add byte variant
2023-09-12 19:58:56 +03:00
dzaima
81a291f860
round up some pointers
2023-08-25 03:47:05 +03:00
dzaima
0598ce8357
use getFillQ less
2023-05-09 00:14:14 +03:00
dzaima
3b580cbd0c
rename unit creation methods
2023-04-29 17:39:13 +03:00
dzaima
865257fdb6
more header file cleanup
2023-04-29 17:39:13 +03:00
dzaima
0aca470931
more explicit inline requiring
2023-04-06 13:12:11 +03:00
dzaima
0180a54207
quiet gcc warning
2023-03-31 16:34:08 +03:00
dzaima
c513724fd4
hide clangd warning
...
and remove whitespace which was previously used for alignment
2023-03-31 14:27:43 +03:00
dzaima
baa1281efe
don't assume select returns refcount 1 array
...
that probably would be a safe assumption right now, but who knows about the future; cpyWithShape should return back its argument directly if it already has refcount 1 anyway
2023-03-31 14:14:13 +03:00
dzaima
413b49de30
don't assume sizeof(ur)==1
2023-03-31 13:44:32 +03:00
Marshall Lochbaum
69e2f6c690
Convert ⍉˘ with atom or no left argument to dyadic ⍉
2023-03-30 21:25:21 -04:00
Marshall Lochbaum
9fe6a2e7b2
Under for invertible Reorder Axes
2023-03-30 19:07:09 -04:00
Marshall Lochbaum
d53f3dbd72
Native dyadic ⍉⁼
2023-03-30 19:02:45 -04:00
Marshall Lochbaum
89016fc88d
Update Reorder Axes implementation comments
2023-03-29 20:23:16 -04:00
Marshall Lochbaum
597e25af4d
Full simplification pass for Reorder Axes
2023-03-29 20:08:36 -04:00
Marshall Lochbaum
d492cd0865
And strided height, so all orders are fast if axes are long
2023-03-29 12:37:15 -04:00
Marshall Lochbaum
e923a71881
Use strided width in transpose-based Reorder Axes
2023-03-29 12:37:15 -04:00
Marshall Lochbaum
814a677676
Make transpose movement functions strided
2023-03-29 12:37:15 -04:00
Marshall Lochbaum
de18fb996b
Save a shape object in Reorder Axes
2023-03-29 12:37:15 -04:00
Marshall Lochbaum
7fea4ca2ad
Combine transp_c2 temp allocations into one TALLOC
2023-03-29 12:37:15 -04:00
Marshall Lochbaum
5b17ee44d6
SIMD kernel for Reorder Axes transposing last two axes
2023-03-29 12:37:15 -04:00
Marshall Lochbaum
8413461074
Fast bottom-level loop for Reorder Axes loop structure
2023-03-29 12:37:15 -04:00
Marshall Lochbaum
bbedbbc585
Transpose large cells with mut_copyG
2023-03-29 12:37:15 -04:00
Marshall Lochbaum
b829076271
Put CPU-size transpose functions in a table
2023-03-29 12:37:15 -04:00
Marshall Lochbaum
410d51501d
Check for AVX2 in Singeli transpose so it can build on non-x86 architectures
2023-03-29 12:37:15 -04:00
Marshall Lochbaum
ebbddf9dcf
Move height/width 2 transposes to Singeli
2023-03-28 16:11:46 -04:00
Marshall Lochbaum
37f481ea0d
Separate out transpose data movement function and share with monadic ⍉⁼
2023-03-28 16:11:46 -04:00
Marshall Lochbaum
3c32844fe0
Separate out transpose_move function and use for el_B
2023-03-28 16:11:46 -04:00
Marshall Lochbaum
968bfd2fc6
Separate transpose el_B case and fix dropped fill for shape 2‿n
2023-03-28 16:11:46 -04:00