In general, do iterative solvers require more floating point operations than the direct solver counterparts? I have some scientific code (written in both PETSc and FEniCS) for solving a mixed FE poisson equation and the profiling summaries seem to always show the direct solvers (eg, mumps, superlu) utilizing less flops by at least one order. Moreover, it also seems that for problems with over 1 million degrees of freedom, the solver requires more time, thus yielding an even smaller FLOPS/s efficiency than if I were to employ iterative solvers like GMRES (with bjacobi preconditioner).
Is this expected? Or is there potentially something wrong with my implementation(s)? Thanks