Effective Runtime Management of Tasks and Priorities in GNU OpenMP Applications