@@ -158,6 +158,12 @@ SX_RTN sx_solver_amg(SX_MAT *A, SX_VEC *x, SX_VEC *b, SX_AMG_PARS *pars)
158
158
// Step 1: AMG setup phase
159
159
sx_amg_setup (& mg , A , pars );
160
160
161
+ // print out CPU time if needed
162
+ if (verb > 0 ) {
163
+ AMG_end = sx_get_time ();
164
+ sx_printf ("AMG setup time: %" fFMTg " s\n" , AMG_end - AMG_start );
165
+ }
166
+
161
167
// Step 2: AMG solve phase
162
168
rtn = sx_solver_amg_solve (& mg , x , b );
163
169
@@ -201,7 +207,7 @@ SX_RTN sx_solver_gmres(SX_KRYLOV *ks, SX_AMG_PARS *pars)
201
207
pars = & npars ;
202
208
}
203
209
204
- verb = pars -> verb ;
210
+ verb = ks -> verb ;
205
211
206
212
nnz = A -> num_nnzs ;
207
213
m = A -> num_rows ;
@@ -223,6 +229,12 @@ SX_RTN sx_solver_gmres(SX_KRYLOV *ks, SX_AMG_PARS *pars)
223
229
// Step 1: AMG setup phase
224
230
sx_amg_setup (& mg , A , pars );
225
231
232
+ // print out CPU time if needed
233
+ if (verb > 0 ) {
234
+ AMG_end = sx_get_time ();
235
+ sx_printf ("AMG setup time: %" fFMTg " s\n" , AMG_end - AMG_start );
236
+ }
237
+
226
238
// Step 2: solve phase
227
239
rtn = sx_solver_gmres_itnl (ks , & mg );
228
240
@@ -265,7 +277,7 @@ SX_RTN sx_solver_cg(SX_KRYLOV *ks, SX_AMG_PARS *pars)
265
277
pars = & npars ;
266
278
}
267
279
268
- verb = pars -> verb ;
280
+ verb = ks -> verb ;
269
281
270
282
nnz = A -> num_nnzs ;
271
283
m = A -> num_rows ;
@@ -287,6 +299,12 @@ SX_RTN sx_solver_cg(SX_KRYLOV *ks, SX_AMG_PARS *pars)
287
299
// Step 1: AMG setup phase
288
300
sx_amg_setup (& mg , A , pars );
289
301
302
+ // print out CPU time if needed
303
+ if (verb > 0 ) {
304
+ AMG_end = sx_get_time ();
305
+ sx_printf ("AMG setup time: %" fFMTg " s\n" , AMG_end - AMG_start );
306
+ }
307
+
290
308
// Step 2: solve phase
291
309
rtn = sx_solver_cg_itnl (ks , & mg );
292
310
@@ -329,7 +347,7 @@ SX_RTN sx_solver_bicgstab(SX_KRYLOV *ks, SX_AMG_PARS *pars)
329
347
pars = & npars ;
330
348
}
331
349
332
- verb = pars -> verb ;
350
+ verb = ks -> verb ;
333
351
334
352
nnz = A -> num_nnzs ;
335
353
m = A -> num_rows ;
@@ -351,6 +369,12 @@ SX_RTN sx_solver_bicgstab(SX_KRYLOV *ks, SX_AMG_PARS *pars)
351
369
// Step 1: AMG setup phase
352
370
sx_amg_setup (& mg , A , pars );
353
371
372
+ // print out CPU time if needed
373
+ if (verb > 0 ) {
374
+ AMG_end = sx_get_time ();
375
+ sx_printf ("AMG setup time: %" fFMTg " s\n" , AMG_end - AMG_start );
376
+ }
377
+
354
378
// Step 2: solve phase
355
379
rtn = sx_solver_bicgstab_itnl (ks , & mg );
356
380
0 commit comments