pub enum LocalDevices {
All,
Explicit(Vec<u8>),
}Expand description
CUDA device indices on a host. Either explicit (a list of indices) or
the "all" shorthand (auto-detect at startup on that host).
local_devices: all defers device-index resolution to startup on
whichever host the value lives on. The host uses cuda_device_count()
and binds devices 0..ranks.len() (sequential from index 0). The
detected count must be at least as large as ranks.len(), otherwise
rendezvous errors loudly.
local_devices: [0, 1] is the explicit form; same as before this
shorthand existed.
Symmetric: works for both the controller host and remote nodes. Pair
with explicit ranks: [N, N+1, ...] to define the world topology;
local_devices only selects which device indices on this host map to
those ranks.
Variants§
All
Auto-detect at startup on this host. Indices 0..ranks.len() bound.
Explicit(Vec<u8>)
Explicit list of CUDA device indices, paired positionally with ranks.
Implementations§
Source§impl LocalDevices
impl LocalDevices
Trait Implementations§
Source§impl Clone for LocalDevices
impl Clone for LocalDevices
Source§fn clone(&self) -> LocalDevices
fn clone(&self) -> LocalDevices
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for LocalDevices
impl Debug for LocalDevices
Source§impl<'de> Deserialize<'de> for LocalDevices
impl<'de> Deserialize<'de> for LocalDevices
Source§fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Self, D::Error>
fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Self, D::Error>
impl Eq for LocalDevices
Source§impl PartialEq for LocalDevices
impl PartialEq for LocalDevices
Source§impl Serialize for LocalDevices
impl Serialize for LocalDevices
impl StructuralPartialEq for LocalDevices
Auto Trait Implementations§
impl Freeze for LocalDevices
impl RefUnwindSafe for LocalDevices
impl Send for LocalDevices
impl Sync for LocalDevices
impl Unpin for LocalDevices
impl UnsafeUnpin for LocalDevices
impl UnwindSafe for LocalDevices
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.