Thanks Weston, that makes a lot of sense. Please let me rephrase to make
sure I get this right.
So the main purpose of minibatch is actually about keeping the working set
within L1 (in addition with the side benefit of more chances to shortcut).
This requires splitting the input batch into
Those goals are somewhat compatible. Sasha can probably correct me if I
get this wrong but my understanding is that the minibatch is just large
enough to ensure reliable vectorized execution. It is used in some
innermost critical sections to both keep the working set small (fit in L1)
and
Hi,
By looking at acero code, I'm curious about the concept `minibatch` being
used in swiss join and grouper.
I wonder if its purpose is to proactively limit the memory size of the
working set? Or is it the consequence of that the temp vector should be
fix-sized (to avoid costly memory