Update show config to include missing info.

-- Ignore aocl dynamic configuration if multithreading is disabled.
     AOCL Dynamic will also be disabled in this case.
  -- Added following configuration settings in showconfig output
     1. Complex return scheme
     2. TRSM preinversion status
     3. AOCL dynamic active status

AOCL-Internal: [CPUPL-1565]
Change-Id: Id5a31b233fc08dcd871de4a693aab0b2a5d9f1c4
This commit is contained in:
Dipal M Zambare
2021-06-29 12:02:11 +05:30
parent 70e9d327a2
commit d2313bb4e6
3 changed files with 58 additions and 32 deletions

View File

@@ -1,6 +1,6 @@
#
#
# BLIS
# BLIS
# An object-based framework for developing high-performance BLAS-like
# libraries.
#
@@ -36,7 +36,7 @@
# Makefile
#
# Field G. Van Zee
#
#
# Top-level makefile for libflame linear algebra library.
#
#
@@ -720,7 +720,7 @@ endif
# --- BLAS test suite rules ---
testblas: blastest-run
testblas: blastest-run
blastest-f2c: check-env $(BLASTEST_F2C_LIB)
@@ -903,7 +903,7 @@ endif
# Check results of BLIS CPP Template tests
checkbliscpp:
$(MAKE) -C $(CPP_TEST_DIR)
$(MAKE) -C $(CPP_TEST_DIR)
# Check the results of the BLIS testsuite.
checkblis: testsuite-run
@@ -1091,24 +1091,28 @@ endif # ifeq ($(IS_WIN),no)
# --- Query current configuration ---
showconfig: check-env
@echo "configuration family: $(CONFIG_NAME)"
@echo "sub-configurations: $(CONFIG_LIST)"
@echo "requisite kernels sets: $(KERNEL_LIST)"
@echo "kernel-to-config map: $(KCONFIG_MAP)"
@echo "configuration family: $(CONFIG_NAME)"
@echo "sub-configurations: $(CONFIG_LIST)"
@echo "requisite kernels sets: $(KERNEL_LIST)"
@echo "kernel-to-config map: $(KCONFIG_MAP)"
@echo "-------------------------"
@echo "BLIS version string: $(VERSION)"
@echo ".so major version: $(SO_MAJOR)"
@echo ".so minor.build vers: $(SO_MINORB)"
@echo "install libdir: $(INSTALL_LIBDIR)"
@echo "install includedir: $(INSTALL_INCDIR)"
@echo "install sharedir: $(INSTALL_SHAREDIR)"
@echo "debugging status: $(DEBUG_TYPE)"
@echo "multithreading status: $(THREADING_MODEL)"
@echo "enable BLAS API? $(MK_ENABLE_BLAS)"
@echo "enable CBLAS API? $(MK_ENABLE_CBLAS)"
@echo "build static library? $(MK_ENABLE_STATIC)"
@echo "build shared library? $(MK_ENABLE_SHARED)"
@echo "ARG_MAX hack enabled? $(ARG_MAX_HACK)"
@echo "BLIS version string: $(VERSION)"
@echo ".so major version: $(SO_MAJOR)"
@echo ".so minor.build vers: $(SO_MINORB)"
@echo "install libdir: $(INSTALL_LIBDIR)"
@echo "install includedir: $(INSTALL_INCDIR)"
@echo "install sharedir: $(INSTALL_SHAREDIR)"
@echo "debugging status: $(DEBUG_TYPE)"
@echo "multithreading status: $(THREADING_MODEL)"
@echo "enable BLAS API? $(MK_ENABLE_BLAS)"
@echo "enable CBLAS API? $(MK_ENABLE_CBLAS)"
@echo "build static library? $(MK_ENABLE_STATIC)"
@echo "build shared library? $(MK_ENABLE_SHARED)"
@echo "ARG_MAX hack enabled? $(ARG_MAX_HACK)"
@echo "complex return scheme: $(MK_COMPLEX_RETURN_SCHEME)"
@echo "enable trsm preinversion: $(MK_ENABLE_TRSM_PREINVERSION)"
@echo "enable AOCL dynamic threads: $(MK_ENABLE_AOCL_DYNAMIC)"
# --- Clean rules ---
@@ -1282,7 +1286,7 @@ endif
changelog:
@echo "Updating '$(DIST_PATH)/$(CHANGELOG)' via '$(GIT_LOG)'"
@$(GIT_LOG) > $(DIST_PATH)/$(CHANGELOG)
@$(GIT_LOG) > $(DIST_PATH)/$(CHANGELOG)
# --- Uninstall rules ---

View File

@@ -191,5 +191,14 @@ SANDBOX := @sandbox@
# variable is set to the empty value.
LIBPTHREAD := @libpthread@
# Complex return scheme configuration
MK_ENABLE_TRSM_PREINVERSION := @enable_trsm_preinversion@
# Complex return scheme configuration
MK_COMPLEX_RETURN_SCHEME := @complex_return@
# Status of aocl dynamic configuration
MK_ENABLE_AOCL_DYNAMIC := @enable_aocl_dynamic@
# end of ifndef CONFIG_MK_INCLUDED conditional block
endif

33
configure vendored
View File

@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# BLIS
# BLIS
# An object-based framework for developing high-performance BLAS-like
# libraries.
#
@@ -337,7 +337,7 @@ print_usage()
echo " "
echo " --enable-aocl-dynamic, --disable-aocl-dynamic"
echo " "
echo " Disable (Enabled by default) dynamic selection of number of"
echo " Disable (Enabled by default) dynamic selection of number of"
echo " threads used to solve the given problem."
echo " Range of optimum number of threads will be [1, num_threads],"
echo " where \"num_threads\" is number of threads set by the application."
@@ -840,7 +840,7 @@ build_kconfig_registry()
assign_key_value "kconfig_registry" "${kernel}" "${newvalue}"
done
done
}
@@ -1941,7 +1941,7 @@ main()
# The root directory of the BLIS framework.
aocldtl_dir='aocl_dtl'
aocldtl_dirpath="${dist_path}/${aocldtl_dir}"
# The name of the sandbox directory.
sandbox_dir='sandbox'
sandbox_dirpath="${dist_path}/${sandbox_dir}"
@@ -3101,11 +3101,20 @@ main()
echo "${script_name}: trsm diagonal element pre-inversion is disabled."
enable_trsm_preinversion_01=0
fi
# Check aocl dynamic threading configuration and enable it only if
# multi-threading is enabled
if [ "x${enable_aocl_dynamic}" = "xyes" ]; then
echo "${script_name}: Dynamic selection of number of threads is enabled"
enable_aocl_dynamic_01=1
if [ "x${threading_model}" != "xoff" ]; then
echo "${script_name}: dynamic selection of number of threads is enabled"
enable_aocl_dynamic_01=1
else
enable_aocl_dynamic_01=0
enable_aocl_dynamic="no"
echo "${script_name}: dynamic threading is disabled as multithreading is disabled"
fi
else
echo "${script_name}: Dynamic selection of number of threads is disabled"
echo "${script_name}: dynamic selection of number of threads is disabled"
enable_aocl_dynamic_01=0
fi
@@ -3154,7 +3163,7 @@ main()
enable_sandbox_01=0
fi
# Check the method used for returning complex numbers
if [ "x${complex_return}" = "xdefault" ]; then
if [ -n "${FC}" ]; then
@@ -3185,7 +3194,7 @@ main()
complex_return='gnu'
fi
fi
if [ "x${complex_return}" = "xgnu" ]; then
complex_return_intel01='0'
elif [ "x${complex_return}" = "xintel" ]; then
@@ -3196,6 +3205,7 @@ main()
exit 1
fi
echo "${script_name}: configuring complex return type as \"${complex_return}\"."
# Variables that may contain forward slashes, such as paths, need extra
@@ -3356,8 +3366,11 @@ main()
| sed -e "s/@enable_memkind@/${enable_memkind}/g" \
| sed -e "s/@pragma_omp_simd@/${pragma_omp_simd}/g" \
| sed -e "s/@sandbox@/${sandbox}/g" \
| sed -e "s/@enable_trsm_preinversion@/${enable_trsm_preinversion}/g" \
| sed -e "s/@enable_aocl_dynamic@/${enable_aocl_dynamic}/g" \
| sed -e "s/@complex_return@/${complex_return}/g" \
> "${config_mk_out_path}"
# Begin substituting information into the bli_config_h_in file, outputting
# to bli_config_h_out. NOTE: We use perl instead of sed because the version