I'm still thinking if it's really necessary to print out these information by ourselves? PETSc can do it with options `-ksp_view -ksp_converged_reason`.