@@ -174,13 +174,14 @@ void run_sparse_cg_example(const sycl::device &dev)
174174
175175 // Calculation B^{-1}r_0
176176 {
177+ fp alpha = 1.0 ;
177178 mkl::sparse::trsv (main_queue, mkl::uplo::lower,
178- mkl::transpose::nontrans, mkl::diag::nonunit ,
179- handle, r_buffer, t_buffer);
179+ mkl::transpose::nontrans,
180+ mkl::diag::nonunit, alpha, handle, r_buffer, t_buffer);
180181 diagonal_mv<fp, intType>(main_queue, nrows, d_buffer, t_buffer);
181182 mkl::sparse::trsv (main_queue, mkl::uplo::upper,
182- mkl::transpose::nontrans, mkl::diag::nonunit ,
183- handle, t_buffer, w_buffer);
183+ mkl::transpose::nontrans,
184+ mkl::diag::nonunit, alpha, handle, t_buffer, w_buffer);
184185 }
185186
186187 mkl::blas::copy (main_queue, nrows, w_buffer, 1 , p_buffer, 1 );
@@ -225,13 +226,14 @@ void run_sparse_cg_example(const sycl::device &dev)
225226
226227 // Calculate w_k = B^{-1}r_k
227228 {
229+ fp alpha = 1.0 ;
228230 mkl::sparse::trsv (main_queue, mkl::uplo::lower,
229231 mkl::transpose::nontrans,
230- mkl::diag::nonunit, handle, r_buffer, t_buffer);
232+ mkl::diag::nonunit, alpha, handle, r_buffer, t_buffer);
231233 diagonal_mv<fp, intType>(main_queue, nrows, d_buffer, t_buffer);
232234 mkl::sparse::trsv (main_queue, mkl::uplo::upper,
233235 mkl::transpose::nontrans,
234- mkl::diag::nonunit, handle, t_buffer, w_buffer);
236+ mkl::diag::nonunit, alpha, handle, t_buffer, w_buffer);
235237 }
236238
237239 // Calculate current norm of correction
@@ -271,7 +273,7 @@ void run_sparse_cg_example(const sycl::device &dev)
271273 catch (std::exception const &e) {
272274 std::cout << " \t\t Caught exception:\n " << e.what () << std::endl;
273275 }
274-
276+
275277 mkl::sparse::release_matrix_handle (main_queue, &handle);
276278 main_queue.wait ();
277279}
0 commit comments