Enum tch::Cuda

source ·
pub enum Cuda {}
Expand description

Cuda related helper functions.

Implementations§

source§

impl Cuda

source

pub fn device_count() -> i64

Returns the number of CUDA devices available.

source

pub fn is_available() -> bool

Returns true if at least one CUDA device is available.

source

pub fn cudnn_is_available() -> bool

Returns true if CUDA is available, and CuDNN is available.

source

pub fn manual_seed(seed: u64)

Sets the seed for the current GPU.

§Arguments
  • seed - An unsigned 64bit int to be used as seed.
source

pub fn manual_seed_all(seed: u64)

Sets the seed for all available GPUs.

§Arguments
  • seed - An unsigned 64bit int to be used as seed.
source

pub fn synchronize(device_index: i64)

Waits for all kernels in all streams on a CUDA device to complete.

§Arguments
  • device_index - A signed 64bit int to indice which device to wait for.
source

pub fn user_enabled_cudnn() -> bool

Returns true if cudnn is enabled by the user.

This does not indicate whether cudnn is actually usable.

source

pub fn set_user_enabled_cudnn(b: bool)

Enable or disable cudnn.

source

pub fn cudnn_set_benchmark(b: bool)

Sets cudnn benchmark mode.

When set cudnn will try to optimize the generators durning the first network runs and then use the optimized architecture in the following runs. This can result in significant performance improvements.

Auto Trait Implementations§

§

impl Freeze for Cuda

§

impl RefUnwindSafe for Cuda

§

impl Send for Cuda

§

impl Sync for Cuda

§

impl Unpin for Cuda

§

impl UnwindSafe for Cuda

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V