Complete the following steps in the CMake GUI:
Set the source (folder containing AOCL-BLAS source code) and build (folder in which the project files will be generated, for example, out) folder paths as shown in the following figure:
Figure 4.2 CMake Source and Build Folders#
It is not recommended to use the folder named build since build is used by Linux build system.
Click on the Configure button to prepare the project options.
Set the generator to Visual Studio 17 2022 and the compiler to ClangCl as shown in the following figure:
Figure 4.3 Set Generator and Compiler#
Update the options based on the project requirements. All the available options are listed in the following table:
Table 4.5 CMake Config Options# Feature
CMake Parameter
AMD CPU architecture
BLIS_CONFIG_FAMILY=zen / zen2 / zen3 / zen4 / zen5 / amdzen
Shared library
BUILD_SHARED_LIBS=ON
Static library
BUILD_SHARED_LIBS=OFF
Debug/Release build type
CMAKE_BUILD_TYPE=Debug / Release
Enable single threading (disables AOCL dynamic dispatch)
ENABLE_THREADING=no
Enable multi-threading (enables AOCL dynamic dispatch with OpenMP)
ENABLE_THREADING=openmp
AOCL Dynamic (automatically selected depending on the value of ENABLE_THREADING)
ENABLE_AOCL_DYNAMIC=ON/OFF
Enable BLAS/CBLAS support
ENABLE_BLAS=ON ENABLE_CBLAS=ON
Enable 32-bit integer size in BLIS and BLAS APIs
INT_SIZE=32 and BLAS_INT_SIZE=32
Enable 64-bit integer size in BLIS and BLAS APIs
INT_SIZE=64 and BLAS_INT_SIZE=64
Absolute path to the OpenMP library, including the library name
OpenMP_libomp_LIBRARY
Table 4.6 CMake Config Options (all variables and their default values)# CMake Parameter
BUILD_SHARED_LIBS=ON(default)/OFF
ENABLE_THREADING=no(default)/openmp
INT_SIZE=auto(default)/32/64
BLAS_INT_SIZE=32(default)/64
ENABLE_BLAS=ON/OFF(default)
ENABLE_CBLAS=ON/OFF(default)
ENABLE_MIXED_DT=ON(default)/OFF
ENABLE_SUP_HANDLING=ON(default)/OFF
ENABLE_AOCL_DYNAMIC=ON(default)/OFF
COMPLEX_RETURN=gnu(default)/intel
ENABLE_NO_UNDERSCORE_API=ON/OFF(default)
ENABLE_UPPERCASE_API=ON/OFF(default)
ENABLE_SYSTEM=ON(default)/OFF
THREAD_PART_JRIR=slab(default)/rr
ENABLE_PBA_POOLS=ON(default)/OFF
ENABLE_SBA_POOLS= ON(default)/OFF
ENABLE_MEM_TRACING=ON/OFF(default)
ENABLE_MIXED_DT=ON(default)/OFF
ENABLE_MIXED_DT_EXTRA_MEM=ON(default)/OFF
ENABLE_SUP_HANDLING=ON(default)/OFF
ENABLE_TRSM_PREINVERSION=ON(default)/OFF
FORCE_VERSION=no(default)/<user-defined>
DISABLE_BLIS_ARCH_TYPE=ON/OFF(default)
RENAME_BLIS_ARCH_TYPE=BLIS_ARCH_TYPE(default)/<user-defined>
RENAME_BLIS_MODEL_TYPE=BLIS_MODEL_TYPE(default)/<user-defined>
For the detailed documentation of all the options, configure CMake with PRINT_CONFIGURE_HELP=ON.
To generate the Microsoft Visual Studio project in the out folder, click on the Generate button as shown in the following figure:
Figure 4.4 CMake Configure and Generate Project Settings#