title: batch CUDA solution of sparse banded Ax=b for various b's
body: <p>I have a sparse banded matrix A and I'd like to (direct) solve Ax=b. I have about 500 vectors b, so I'd like to solve for the corresponding 500 x's. 
  I'm brand new to CUDA, so I'm a little confused as to what options I have available.</p>
  
  <p>cuSOLVER has a batch direct solver cuSolverSP for sparse A_i x_i = b_i using QR <a href="http://devblogs.nvidia.com/parallelforall/parallel-direct-solvers-with-cusolver-batched-qr/">here</a>. (I'd be fine with LU too since A is decently conditioned.) However, as far as I can tell, I can't exploit the fact that all my A_i's are the same.</p>
  
  <p>Would an alternative option be to first determine a sparse LU (QR) factorization on the CPU or GPU then perform in parallel the backsubstitution (respectively, backsub and matrix mult) on the GPU? If <a href="http://docs.nvidia.com/cuda/cusolver/index.html#cusolver-lt-t-gt-csrlsvlu">cusolverSp&lt; t >csrlsvlu()</a> is for one b_i, is there a standard way to batch perform this operation for multiple b_i's?</p>
  
  <p>Finally, since I don't have intuition for this, should I expect a speedup on a GPU for either of these options, given the necessary overhead? x has length ~10000-100000. Thanks.</p>