In this case it’s bringing apa102 performance closer to, say, lpd8806. The spi code is pretty well tuned to aggressively use FIFOs (and other things like continuous mode) for 24-bit output. The apa102 writing 32 bits per pixel meant I was bypassing that. I did some reordering of how the apa102 writer is doing its thing to better interleaved scaling/feeding the spi hardware, but there’s still more I can do (e.g. using continuous mode between words to shave some more clock cycles)