@@ -174,13 +174,14 @@ void run_sparse_cg_example(const sycl::device &dev)
174
174
175
175
// Calculation B^{-1}r_0
176
176
{
177
+ fp alpha = 1.0 ;
177
178
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);
180
181
diagonal_mv<fp, intType>(main_queue, nrows, d_buffer, t_buffer);
181
182
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);
184
185
}
185
186
186
187
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)
225
226
226
227
// Calculate w_k = B^{-1}r_k
227
228
{
229
+ fp alpha = 1.0 ;
228
230
mkl::sparse::trsv (main_queue, mkl::uplo::lower,
229
231
mkl::transpose::nontrans,
230
- mkl::diag::nonunit, handle, r_buffer, t_buffer);
232
+ mkl::diag::nonunit, alpha, handle, r_buffer, t_buffer);
231
233
diagonal_mv<fp, intType>(main_queue, nrows, d_buffer, t_buffer);
232
234
mkl::sparse::trsv (main_queue, mkl::uplo::upper,
233
235
mkl::transpose::nontrans,
234
- mkl::diag::nonunit, handle, t_buffer, w_buffer);
236
+ mkl::diag::nonunit, alpha, handle, t_buffer, w_buffer);
235
237
}
236
238
237
239
// Calculate current norm of correction
@@ -271,7 +273,7 @@ void run_sparse_cg_example(const sycl::device &dev)
271
273
catch (std::exception const &e) {
272
274
std::cout << " \t\t Caught exception:\n " << e.what () << std::endl;
273
275
}
274
-
276
+
275
277
mkl::sparse::release_matrix_handle (main_queue, &handle);
276
278
main_queue.wait ();
277
279
}
0 commit comments