good question. out of curiosity, how does the development team think of overhead? Would numerical tests suffice (perhaps calling .cpu() to collect results at the end of my operations to account for the async?), or are you looking for a Big-O analysis for rank reveal + LU over straight SVD? I’d need to look into the specifics of the magma implementation for that (well, frankly, I have some friends in the department who’d be better suited for that).