cubecl_runtime/config/
compilation.rs1#[cfg(std_io)]
2use super::cache::CacheConfig;
3use super::logger::{LogLevel, LoggerConfig};
4
5#[derive(Default, Clone, Debug, serde::Serialize, serde::Deserialize)]
7pub struct CompilationConfig {
8 #[serde(default)]
10 pub logger: LoggerConfig<CompilationLogLevel>,
11 #[serde(default)]
13 #[cfg(std_io)]
14 pub cache: Option<CacheConfig>,
15 #[serde(default)]
17 pub check_mode: BoundsCheckMode,
18}
19
20#[derive(Default, Clone, Copy, Debug, serde::Serialize, serde::Deserialize)]
22pub enum BoundsCheckMode {
23 #[serde(rename = "enforce")]
24 Enforce,
26 #[serde(rename = "validate")]
27 Validate,
29 #[default]
32 #[serde(rename = "auto")]
33 Auto,
34}
35
36#[derive(Default, Clone, Copy, Debug, serde::Serialize, serde::Deserialize)]
38pub enum CompilationLogLevel {
39 #[default]
41 #[serde(rename = "disabled")]
42 Disabled,
43
44 #[serde(rename = "basic")]
46 Basic,
47
48 #[serde(rename = "full")]
50 Full,
51}
52
53impl LogLevel for CompilationLogLevel {}