pub use crate::optimizer::scheduler::WorkloadHints;
use crate::hardware::SystemInfo;
pub use crate::hardware::CpuInfo;
pub fn add(a: &[f32], b: &[f32], out: &mut [f32]) {
add_advanced(a, b, out, WorkloadHints::default());
}
pub fn add_advanced(a: &[f32], b: &[f32], out: &mut [f32], hints: WorkloadHints) {
let mut builder = crate::public_api::ArchX::compute();
if let Some(n) = hints.thread_count {
builder = builder.max_threads(n);
}
let _ = builder.add(a, b, out);
}
pub fn get_info() -> CpuInfo {
SystemInfo::detect().cpu
}
pub fn get_system_info() -> SystemInfo {
SystemInfo::detect()
}