gmonad: a deep dive into parallel execution