Hybrid parallel programming is the practice of combining multiple
parallel programming models within a single application.
Hybrid programming with MPI as an outer level of parallelism and OpenMP or threads as an inner, nested level of parallelism is becoming increasingly popular and has been extensively explored