ucx icon indicating copy to clipboard operation
ucx copied to clipboard

UCP: API - adding priority attribute to ucp requests

Open roiedanino opened this issue 2 years ago • 5 comments

What

Adding priority attribute to ucp_request_param_t

Why ?

Upcoming feature - high-priority messages, on supporting transports.

roiedanino avatar Nov 22 '23 16:11 roiedanino

Few questions:

  1. What is the use case and how it is going to be implemented ?
  2. I don't thinking just stating "the priorities" is sufficient for QoS definition.E.g. Is this high priority for BW or latency ? Whaat "high" actually means. Do we optimize for minimum service level or max service levels ?

The above API definition is not complete. It requires more clarity and definition what you trying to achieve. Demonstration of working implementation also will be necessary for this change.

shamisp avatar Nov 26 '23 16:11 shamisp

what is the use case and how it is going to be implemented ? I don't thinking just stating "the priorities" is sufficient for QoS definition.

Use Case

Prioritizing specific messages when possible, UCX will rely on HW configuration, for example: HW will be configured with a high-priority SL and UCX will be configured accordingly: UCX_IB_HIGH_PRIORITY_SL=<hw configured sl>

Implementation:

  1. Some of the ifaces will have priority messages capability
  2. Each uct_ep created at UCP level will have a matching high-priority uct_ep if iface is capable
  3. For each request: request_param_t will indicate the priority level: in case the selected lane / the ep supports prioritizing, the priority uct_ep will be used, in ib that ep will be configured to use the UCX_IB_HIGH_PRIORITY_SL value as sl.

roiedanino avatar Nov 26 '23 16:11 roiedanino

what is the use case and how it is going to be implemented ? I don't thinking just stating "the priorities" is sufficient for QoS definition.

Use Case

Prioritizing specific messages when possible, UCX will rely on HW configuration, for example: HW will be configured with a high-priority SL and UCX will be configured accordingly: UCX_IB_HIGH_PRIORITY_SL=

Implementation:

  1. Some of the ifaces will have priority messages capability
  2. Each uct_ep created at UCP level will have a matching high-priority uct_ep if iface is capable
  3. For each request: request_param_t will indicate the priority level: in case the selected lane / the ep supports prioritizing, the priority uct_ep will be used, in ib that ep will be configured to use the UCX_IB_HIGH_PRIORITY_SL value as sl.

Can you please specify application use case ?

shamisp avatar Dec 18 '23 21:12 shamisp

@shamisp can you pls take a look?

yosefe avatar Jan 03 '24 16:01 yosefe

@shamisp can look please?

gleon99 avatar Jan 08 '24 07:01 gleon99