kronos_compute/implementation/
mod.rs1use std::sync::Mutex;
4use log::warn;
5
6pub mod error;
7pub mod instance;
8pub mod device;
9pub mod memory;
10pub mod buffer;
11pub mod pipeline;
12pub mod descriptor;
13pub mod sync;
14#[cfg(test)]
22mod tests;
23
24pub use instance::*;
26pub use device::*;
27pub use memory::*;
28pub use buffer::*;
29pub use pipeline::*;
30pub use descriptor::*;
31pub use sync::*;
32
33lazy_static::lazy_static! {
35 pub static ref KRONOS_INITIALIZED: Mutex<bool> = Mutex::new(false);
36}
37
38pub fn initialize_kronos() -> Result<(), error::KronosError> {
40 log::info!("=== Kronos Pure Rust Implementation Initializing ===");
41 let mut initialized = KRONOS_INITIALIZED.lock()?;
42 if *initialized {
43 log::info!("Kronos already initialized");
44 return Ok(());
45 }
46
47 *initialized = true;
50 log::info!("Kronos initialized successfully - pure Rust compute implementation");
51 Ok(())
52}
53