Only convert array if needed
Add benchmark for large matrix multiplication

Closes #4203
Merge pull request #4281 from justhalf/fix/issue4203

Sparse matrix multiplication: only convert array if needed (with proper fix branch)