Many pre-processors have automatic solver selection such as iterative or direct. For non-linear analysis in particular you may need to adjust some of the solver settings. These are unique to your chosen FEA code and it is best to consult your software manuals to achieve optimum performance.
Typically linear analysis solves much quicker than nonlinear analysis. Therefore whenever possible choose linear analysis but only in cases where the quality of the results are not compromised.
The iterative or direct solver can be used to solve non-linear problems. The graph below shows the Newton-Raphson iterative solver method. The solver iterates until the load has converged.
In general iterative solvers are usually faster for linear analysis and direct solvers for non-linear analysis but new solvers are continually being released.
Tip If your analysis fails to solve this is often due to instability in the model. Check your boundary conditions carefully. For contact analysis you could try adding weak springs to stabilize the model and apply time steps to the load. There are also various solver parameters that you can adjust, try relaxing the convergence tolerances.