Skip to content

Conversation

@steiltre
Copy link
Collaborator

Adds virtual NR routing scheme that functions similarly to NR but with an environment variable to control the number of ranks assigned to a virtual node for use in routing calculations.

This is enabled and controlled by setting the YGM_COMM_ROUTING" environment variable to "VIRTUAL_NR", and then setting YGM_COMM_VIRTUAL_NODE_SIZE` to the desired number of ranks to consider to be on the same node when performing routing calculations.

This routing scheme does not use any information about the mapping of ranks to compute nodes when determining which ranks get assigned to the same virtual node. Ranks are assigned block-cyclically according to their ID.

To get access to the new YGM_COMM_VIRTUAL_NODE_SIZE environment variable, the comm_router object needs to be given access to the comm_environment variable set up by the comm.

…h an environment variable to control the number of ranks assigned to a virtual node for use in routing calculations
* adds back in more comm tests to more thoroughly test VIRTUAL_NR
routing
@steiltre
Copy link
Collaborator Author

@rogerpearce Is this what you had in mind?

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.

1 participant