Expressing Coarse-Grain Dependencies Among Tasks in Shared Memory Programs | IEEE Journals & Magazine | IEEE Xplore