summaryrefslogtreecommitdiff
path: root/candle-core/src/utils.rs
blob: 895c97e1a3a3cdcb812af1fbc3979956a36303f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
use std::str::FromStr;

pub fn get_num_threads() -> usize {
    // Respond to the same environment variable as rayon.
    match std::env::var("RAYON_NUM_THREADS")
        .ok()
        .and_then(|s| usize::from_str(&s).ok())
    {
        Some(x) if x > 0 => x,
        Some(_) | None => num_cpus::get(),
    }
}

pub fn has_mkl() -> bool {
    #[cfg(feature = "mkl")]
    return true;
    #[cfg(not(feature = "mkl"))]
    return false;
}

pub fn cuda_is_available() -> bool {
    #[cfg(feature = "cuda")]
    return true;
    #[cfg(not(feature = "cuda"))]
    return false;
}