pub enum CandleDevice {
Cpu,
Cuda,
Metal,
Auto,
}Expand description
Compute device for the Candle local-inference backend.
Determines which hardware accelerator is used for inference. Feature flags
candle/metal and candle/cuda must be enabled at compile time for the
corresponding variants to succeed at runtime.
Variants§
Cpu
Run inference on the CPU.
Cuda
Run inference on an NVIDIA CUDA GPU (requires cuda feature).
Metal
Run inference on Apple Silicon via Metal (requires metal feature).
Auto
Auto-detect the best available device: Metal → CUDA → CPU.
Requires the corresponding metal or cuda feature to be enabled at compile time.
Falls back to CPU when no GPU features are compiled in.
Trait Implementations§
Source§impl Clone for CandleDevice
impl Clone for CandleDevice
Source§fn clone(&self) -> CandleDevice
fn clone(&self) -> CandleDevice
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for CandleDevice
Source§impl Debug for CandleDevice
impl Debug for CandleDevice
Source§impl Default for CandleDevice
impl Default for CandleDevice
Source§fn default() -> CandleDevice
fn default() -> CandleDevice
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for CandleDevice
impl<'de> Deserialize<'de> for CandleDevice
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<CandleDevice, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<CandleDevice, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for CandleDevice
Source§impl PartialEq for CandleDevice
impl PartialEq for CandleDevice
Source§impl Serialize for CandleDevice
impl Serialize for CandleDevice
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for CandleDevice
Auto Trait Implementations§
impl Freeze for CandleDevice
impl RefUnwindSafe for CandleDevice
impl Send for CandleDevice
impl Sync for CandleDevice
impl Unpin for CandleDevice
impl UnsafeUnpin for CandleDevice
impl UnwindSafe for CandleDevice
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request