diff --git a/src/logging_layer.rs b/src/logging_layer.rs index 7b7b025d..491dcd21 100644 --- a/src/logging_layer.rs +++ b/src/logging_layer.rs @@ -17,4 +17,31 @@ pub fn initialize_logging_layer() { if builder.try_init().is_ok() { log::info!("Initialized the logger ..") } + + log_detected_x86_features(); } + +fn log_detected_x86_features() { + let mut features: Vec = Vec::new(); + if is_x86_feature_detected!("avx") { + features.push("AVX".to_string()); + } + + if is_x86_feature_detected!("avx2") { + features.push("AVX2".to_string()); + } + + if is_x86_feature_detected!("avx512f") { + features.push("AVX512F".to_string()); + } + + if is_x86_feature_detected!("fma") { + features.push("FMA".to_string()); + } + + if features.is_empty() { + log::info!("No selected CPU features detected .."); + } else { + log::info!("Detected CPU features: {:?}", features.join(", ")); + } +} \ No newline at end of file