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

fabtests/prov/efa: Add remote exit early test #10810

Merged
merged 1 commit into from
Feb 24, 2025

Conversation

jiaxiyan
Copy link
Contributor

Add tests to make sure when sender exits early in the middle of send, receiver polls cq and handle errors gracefully.
Add options for receiver posts receive, sender post tagged send, and sender posts fi_writedata.

@jiaxiyan jiaxiyan requested a review from a team February 21, 2025 00:22
printf("server posts recv\n");
}

ft_start();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why do you need ft_start() and ft_stop()?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

to track the time in between

post_writedata = true;

hints->ep_attr->type = FI_EP_RDM;
hints->caps |= FI_MSG | FI_RMA;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be already handled by -o

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see this being set in ft_parse_api_opts

* either ft_exchange_keys() or ft_sync()
*/
if (post_writedata) {
ret = ft_exchange_keys(&remote);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Notice: ft_exchange_keys finally calls ft_sync(), which will call ft_sync_inband(true), so it will cause the receiver to always post an outstanding recv buffer. This is ok for RMA test because the rx buffer post shouldn't matter here, unless we will support FI_RX_CQ_DATA

shijin-aws
shijin-aws previously approved these changes Feb 21, 2025

@pytest.mark.functional
def test_remote_exit_early_post_send(cmdline_args):
for message_size in [65536, 131072, 1048576]:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: use a fixture as parameters

Add tests to make sure when sender exits early in the middle of send,
receiver polls cq and handle errors gracefully.
Add options for receiver posts receive, sender posts tagged send, and
sender posts fi_writedata.

Signed-off-by: Jessie Yang <jiaxiyan@amazon.com>
@shijin-aws
Copy link
Contributor

This should be pure EFA change and don't need to check Intel CI failure.

@shijin-aws shijin-aws merged commit 8f34502 into ofiwg:main Feb 24, 2025
12 of 13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants