Repository navigation
[TEMP][DO NOT REVIEW] Diagnose PR 11685 Azure protocol selection #11858
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
Changes from all commits
5fa905a
8e90a98
d093cd3
638f131
f1549fe
d32210a
de96cc6
2d5daed
8936637
f8e568c
093ce68
11eee13
cc5c691
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -400,6 +400,84 @@ class test_ucp_proto_am_rndv : public test_ucp_proto { | |
| } | ||
|
|
||
| protected: | ||
| void dump_am_rndv_selection(const ucp_proto_select_elem_t *select_elem) | ||
| { | ||
| const ucp_proto_threshold_elem_t *thresh = select_elem->thresholds; | ||
| size_t min_msg_length = 0; | ||
|
|
||
| for (;;) { | ||
| const ucp_proto_config_t *proto_config = &thresh->proto_config; | ||
|
|
||
| UCS_TEST_MESSAGE << "PR11685_DIAG outer range=[" | ||
| << min_msg_length << "," | ||
| << thresh->max_msg_length << "] proto=" | ||
| << proto_config->proto->name << " sys_dev=" | ||
| << static_cast<unsigned>( | ||
| proto_config->select_param.sys_dev) | ||
| << " mem_type=" | ||
| << static_cast<unsigned>( | ||
| proto_config->select_param.mem_type) | ||
| << " op_id_flags=" | ||
| << static_cast<unsigned>( | ||
| proto_config->select_param.op_id_flags); | ||
|
|
||
| if (std::strcmp(proto_config->proto->name, "am/rndv") == 0) { | ||
| const ucp_proto_rndv_ctrl_priv_t *rpriv = | ||
| static_cast<const ucp_proto_rndv_ctrl_priv_t*>( | ||
| proto_config->priv); | ||
| const ucp_proto_config_t *remote_proto_config = | ||
| &rpriv->remote_proto_config; | ||
| const ucp_proto_select_param_t *remote_select_param = | ||
| &remote_proto_config->select_param; | ||
|
|
||
| UCS_TEST_MESSAGE << "PR11685_DIAG remote outer_range=[" | ||
| << min_msg_length << "," | ||
| << thresh->max_msg_length << "] sys_dev=" | ||
| << static_cast<unsigned>( | ||
| remote_select_param->sys_dev) | ||
| << " mem_type=" | ||
| << static_cast<unsigned>( | ||
| remote_select_param->mem_type) | ||
| << " mem_flags=" | ||
| << static_cast<unsigned>( | ||
| remote_select_param->op.mem_flags) | ||
| << " op_id_flags=" | ||
| << static_cast<unsigned>( | ||
| remote_select_param->op_id_flags) | ||
| << " rkey_cfg_index=" | ||
| << remote_proto_config->rkey_cfg_index; | ||
|
|
||
| if (remote_proto_config->rkey_cfg_index != | ||
| UCP_WORKER_CFG_INDEX_NULL) { | ||
| const ucp_rkey_config_key_t *rkey_key = | ||
| &ucs_array_elem( | ||
| &worker()->rkey_config, | ||
| remote_proto_config->rkey_cfg_index).key; | ||
|
|
||
| UCS_TEST_MESSAGE << "PR11685_DIAG rkey outer_range=[" | ||
| << min_msg_length << "," | ||
| << thresh->max_msg_length << "] sys_dev=" | ||
| << static_cast<unsigned>(rkey_key->sys_dev) | ||
| << " mem_type=" | ||
| << static_cast<unsigned>( | ||
| rkey_key->mem_type) | ||
| << " flags=" | ||
| << static_cast<unsigned>(rkey_key->flags) | ||
| << " md_map=" << rkey_key->md_map | ||
| << " unreachable_md_map=" | ||
| << rkey_key->unreachable_md_map; | ||
| } | ||
| } | ||
|
|
||
| if (thresh->max_msg_length == SIZE_MAX) { | ||
| break; | ||
| } | ||
|
|
||
| min_msg_length = thresh->max_msg_length + 1; | ||
| ++thresh; | ||
| } | ||
| } | ||
|
|
||
| const ucp_proto_config_t *select_am_rndv_remote_proto_config( | ||
| uint8_t op_flags) | ||
| { | ||
|
|
@@ -428,6 +506,8 @@ class test_ucp_proto_am_rndv : public test_ucp_proto { | |
| return nullptr; | ||
| } | ||
|
|
||
| dump_am_rndv_selection(select_elem); | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The invocation of |
||
|
|
||
| thresh = ucp_proto_thresholds_search_slow(select_elem->thresholds, | ||
| UCS_MBYTE); | ||
| EXPECT_NE(nullptr, thresh); | ||
|
|
@@ -778,7 +858,8 @@ UCS_TEST_P(test_ucp_proto_am_rndv, | |
| UCS_TEST_P(test_ucp_proto_am_rndv, | ||
| am_explicit_scheme_disables_force_provenance, | ||
| "RNDV_PIPELINE_SHM_CUDA_STAGING_FORCE=y", | ||
| "RNDV_SCHEME=get_zcopy") | ||
| "RNDV_SCHEME=get_zcopy", | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Adding |
||
| "PROTO_INFO=y") | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. pls drop |
||
| { | ||
| require_cuda_rndv_support(); | ||
|
|
||
|
|
||
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.
The entire
dump_am_rndv_selection()helper is debug scaffolding. Every message is prefixed withPR11685_DIAG, which is a PR/issue tracking tag, not a real diagnostic. This dumps internal selection state on everyselect_am_rndv_remote_proto_config()call and adds nothing to test coverage — it makes no assertions. Please remove it before merge.