habanero-rice / hclib

A C/C++ task-based programming model for shared memory and distributed parallel computing.
http://habanero-rice.github.io/hclib/
BSD 3-Clause "New" or "Revised" License
71 stars 35 forks source link

Hclib mem tie break #80

Closed agrippa closed 4 years ago

agrippa commented 4 years ago

@srirajpaul one more small bug fix.

When copying between two HClib places/locales, the runtime needs to figure out what kind of copy API it has to use (e.g. memcpy, cudaMemcpy, etc). If it encounters a copy between two locales that each say HClib must use its copy API, HClib has no way of really negotiating between the two and will abort. This change handles the trivial case where the two places being copied between both say HClib must use their proprietary API, but those two places are both asking for the same API.