Warn user when auto-detection returns 'generic'.

Details:
- Added logic to configure that causes the script to output a warning
  to the user if/when "./configure auto" is run and the underlying
  hardware feature detection code is unable to identify the hardware.
  In these cases, the auto-detect code will return 'generic', which
  is likely not what the user expected, and a flag will be set so that
  a message is printed at the end of the configure output. (Thankfully,
  we don't expect this scenario to play out very often.) Thanks to
  Devin Matthews for suggesting this fix #384.
This commit is contained in:
Field G. Van Zee
2020-03-26 16:55:00 -05:00
committed by Devrajegowda, Kiran
parent 9e76059f15
commit b325f1ea62

26
configure vendored
View File

@@ -2430,8 +2430,22 @@ main()
# Call the auto_detect() function and save the returned string in
# config_name.
config_name=$(auto_detect)
#config_name="generic"
echo "${script_name}: hardware detection driver returned '${config_name}'."
# If the auto-detect code returned the "generic" string, it means we
# were unable to automatically detect the user's hardware type. While
# this is going to be a rare event, it will likely lead the user to
# experience much lower performance than expected, and thus we will
# warn them about it at the end of the configure output (to increase
# the chances that they see it).
if [ "${config_name}" = "generic" ]; then
warn_user_generic=1
else
warn_user_generic=0
fi
else
# Use the command line argument as the configuration name.
@@ -3485,6 +3499,18 @@ main()
echo "${script_name}: configured to build within top-level directory of source distribution."
fi
if [ "${warn_user_generic}" = "1" ]; then
echo "${script_name}: "
echo "${script_name}: *** Unable to automatically detect hardware type! ***"
echo "${script_name}: "
echo "${script_name}: NOTE: configure was unable to identify a subconfiguration"
echo "${script_name}: optimized for your hardware. As a result, the 'generic'"
echo "${script_name}: subconfiguration (with low-performance reference kernels)"
echo "${script_name}: will be used. For support, please open an issue on GitHub"
echo "${script_name}: at https://github.com/flame/blis/issues."
echo "${script_name}: "
fi
# Exit peacefully.
return 0