Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

parsec_get_best_device, parsec_gpu_data_stage_in and NEW tiles requires a fix #564

Open
therault opened this issue Jun 29, 2023 · 0 comments
Labels
bug Something isn't working

Comments

@therault
Copy link
Contributor

parsec_get_best_device and parsec_gpu_data_stage_in use an approximate way to decide that a tile is NEW.

In parsec_gpu_data_stage_in, we just say it's NEW if NULL == source_repo_entry && NULL == original->dc && version == 0.

In parsec_get_best_device we say it's NEW if NULL == source_repo_entry.

All data copies in DTD, and probably in TTG, have a NULL source_repo_entry. This is not a good test.

Suggested solution: add a flag to the flow to denote it's NEW, or if it is not NEW for all flows, add a flag to the data copy? But do not overload the meaning of other fields, as this is fragile.

As a consequence, DTD multi-GPU is currently broken (a task can execute on any GPU even if the predecessor was modifying one of its input on another GPU and did not push it out).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant