use super::HardwareCaps;
pub fn startup_banner(caps: &HardwareCaps, detector_count: usize, pattern_count: usize) -> String {
let gpu = if let Some(name) = &caps.gpu_name {
if caps.gpu_is_software {
format!("GPU: {name} (software, ignored)")
} else {
format!("GPU: {name}")
}
} else {
"GPU: none".to_string()
};
let simd = super::simd_label(caps.has_avx512, caps.has_avx2, caps.has_neon);
let hs = if caps.hyperscan_available {
"Hyperscan"
} else {
"AC"
};
let uring = if caps.io_uring_available {
" io_uring"
} else {
""
};
format!(
"{} cores | {} | SIMD: {} | {} | {detector_count} detectors ({pattern_count} patterns){uring}",
caps.physical_cores, gpu, simd, hs,
)
}