-
Notifications
You must be signed in to change notification settings - Fork 5
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
Support for tag metadata in one-sided communication #2
Comments
As a side note, what would be the difference in terms of functionality of having a handler function versus having a completion queue and calling some function for each request? Other than the handler is invoked from within LCI and the function would be called by the user. |
No problem, I already have this feature at some point.
This is the only difference, and usually comes down to the drawback of active messages. For example, since the handler is executed in the context of a A handler also means a function call, enqueue can be done in hardware, or a few instructions. Runtime with only AMs end up having people called functions just to enqueue data to the consumer tasks. |
That's effectively what's being done with the way they've set up the PaRSEC communication engine layer. We should talk to them to figure out if we can get around that. |
I think we have this now? |
After my meeting with @snirmarc earlier today, we came to the conclusion that it may be useful to add tags to the LCI one-sided communication calls. These are obviously not used for tag matching, but they are used to disambiguate between different puts or gets when using a handler or queue for completion.
This is helpful for implementing PaRSEC with LCI; their 'put' and 'get' calls use callbacks for completion on both the local and remote endpoints and need some mechanism to connect the callback to the particular communication that's being completed.
The text was updated successfully, but these errors were encountered: