I need to solve a least squares problem that takes the following form:
$$p = \arg \min_{x}\Vert J V x - y \Vert_2, $$
where $J \in \mathbb{R}^{N \times N}$ is a general dense matrix, and $V \in \mathbb{R}^{N \times m}$ is a block-diagonal matrix with $m << N$ (that is, this is a typical overdetermined least-squares problem).
I'm wondering if there is a way to take advantage of that block-diagonal matrix. When I form the product $JV$, now it is a dense matrix that I can use a dense least-squares solver to solve, but it feels like there should be a better solution. Does anyone have an idea to do this faster?
Edits for additional details: Typical values of $V$ for my current problem are about 100,000 rows and 100 columns, though I'd like to scale that up to many more rows and probably a few more columns. The block diagonal structure means that this matrix could be written as a block matrix that is diagonal, but the blocks are not necessarily square or the same size.