-
Notifications
You must be signed in to change notification settings - Fork 433
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
UCT/IB/RC: Add resource query and setup infrastructure. #14
Conversation
* Add API functions to query for resources * Implement resource query for IB transports/devices * Add RC transport
*/ | ||
typedef struct uct_resource_desc { | ||
char tl_name[64]; /* Transport name */ | ||
char hw_name[64]; /* Hardware resource name */ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we want to change 64 to:
#define UCT_MAX_NAME_LEN (64)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok
Done with the first pass |
@fullerdj you may want to review it as well (if you have time) |
* Define constatnt for name length. * Fallback if HCA locality file is not present * Single return point for uct_ib_query_resources
Merged build triggered. |
Merged build started. |
Merged build finished. Test FAILed. |
Test FAILed. Build Log
Test FAILed. |
The above error seems to be installation problem. |
👍 |
UCT/IB/RC: Add resource query and setup infrastructure.
rcache fixes
This one defines a framework for getting communication resources, and creating interface. An implementation over IB/RC is also included.
Hardware resources are identified by a string, e.g "mlx4_0:1", or "memory". The returned list is of all supported combinations of transports and resources.
The subnet address field is intended to provide "proximity"/"connectivity" information to upper level/user. It could be IB subnet prefix, or an IPv4/v6 subnet prefix, or in case of shared memory - unique host ID. The rule is, if you have an interface created on one resource, it could talk to any interface created on a remote resource, provided they have the same subnet address. This of course does not deal with cluster mis-configuration issues.