kernels don't *need* to allocate full broadcasting