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

PR #15577: [PJRT:GPU] Add setting for mocked number of hosts per slice #17711

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

copybara-service[bot]
Copy link

@copybara-service copybara-service bot commented Sep 27, 2024

PR #15577: [PJRT:GPU] Add setting for mocked number of hosts per slice

Imported from GitHub PR #15577

With the existing enable_mock_nccl setting it is impossible to warm up compilation cache when there are multiple processes per node. This is because the cache key includes topology and GPU topology contains information about number of slices and number of hosts per slice. The current mocking of topologies always sets num_hosts_per_slice to 1. However, if you have multiple GPUs on a node and run a process-per-GPU then num_hosts_per_slice must be set to the number of GPUs.

This patch allows setting num_hosts_per_slice explicitly when creating the GPU client.
Copybara import of the project:

--
b88208e by Jaroslav Sevcik [email protected]:

Add setting for number of hosts per slice

--
0e3200a by Jaroslav Sevcik [email protected]:

Specify topology as "slice x hosts_per_slice"

--
237308d by Jaroslav Sevcik [email protected]:

Change topology description to include #devices-per-host

--
813c234 by Jaroslav Sevcik [email protected]:

Add default value to BuildDistributedDevices new parameter

Merging this change closes #15577

FUTURE_COPYBARA_INTEGRATE_REVIEW=#15577 from jaro-sevcik:mock-num-hosts-per-slice 813c234

@copybara-service copybara-service bot force-pushed the test_679575608 branch 4 times, most recently from aaace2e to 6d1909f Compare October 2, 2024 15:12
Imported from GitHub PR #15577

With the existing `enable_mock_nccl` setting it is impossible to warm up compilation cache when there are multiple processes per node. This is because the cache key includes topology and GPU topology contains information about number of slices and number of hosts per slice. The current mocking of topologies always sets num_hosts_per_slice to 1. However, if you have multiple GPUs on a node and run a process-per-GPU then num_hosts_per_slice must be set to the number of GPUs.

This patch allows setting num_hosts_per_slice explicitly when creating the GPU client.
Copybara import of the project:

--
b88208e by Jaroslav Sevcik <[email protected]>:

Add setting for number of hosts per slice

--
0e3200a by Jaroslav Sevcik <[email protected]>:

Specify topology as "slice x hosts_per_slice"

--
237308d by Jaroslav Sevcik <[email protected]>:

Change topology description to include #devices-per-host

--
813c234 by Jaroslav Sevcik <[email protected]>:

Add default value to BuildDistributedDevices new parameter

Merging this change closes #15577

FUTURE_COPYBARA_INTEGRATE_REVIEW=#15577 from jaro-sevcik:mock-num-hosts-per-slice 813c234
PiperOrigin-RevId: 679575608
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