Windows executable ver calculix_2.19

hi,

yeah keeping up to date with the intel install is confusing. here are my install instructions:


~ Getting the Calculix Windows build to run properly ~


Download the Calculix Windows binary files from the Calculix website.

Set the following Windows system environment variables:

MKL_INTERFACE_LAYER=LP64
MKL_THREADING_LAYER=INTEL
OMP_NUM_THREADS=(Set to desired number of cores)
OPENBLAS_NUM_THREADS=1
PASTIX_MIXED_PRECISION=1

Copy the following files to the same folder as the ccx_dynamic.exe file. The following files come from installing the Intel oneAPI Base and HPC toolkits.

libiomp5md.dll (Doesn’t come with the ‘Base’ toolkit, have to install the ‘HPC’ toolkit)
mkl_core.2.dll
mkl_def.2.dll
mkl_intel_thread.2.dll
rename mkl_rt.2.dll to mkl_rt.1.dll

One of the following three files will also be needed. You will have to experiment to find out which your computer can use. Move each file in and out of the folder with the ccx_dynamic.exe file, to find out which one you need. Try to run PARDISO each time you move a different file into the folder. You may get a message saying a file is missing or the solver may just quit without any indication of what’s
wrong. Only have one of the files in the folder when you test.

mkl_avx512.2.dll (fastest)
mkl_avx2.2.dll (faster)
mkl_sequential.2.dll (slowest)

Make sure to keep the Intel oneAPI toolkits up to date. After you update the toolkits, copy all of the files you needed into the ccx_dynamic.exe folder again.

Use the Calculix SOLVER= option to call one of three available solvers:

SPOOLES (This solver requires a lot of memory for large problems)
PARDISO (I generally get the lowest run times by using this solver. It also has the least hardware utilization)
PASTIX (Best multi-core utilization, but not necessarily the fastest option)

Examples; SOLVER=SPOOLES, SOLVER=PARDISO, SOLVER=PASTIX

If the above command is not specified, the ccx_dynamic.exe file uses PASTIX by default.

The run times you get with the solvers seems to depend greatly on the computer hardware you have. For my budget laptop, PARDISO is the fastest solver. It also uses the hardware the most efficiently. Meaning, the power draw is the lowest. PASTIX does a great job using multi-core. However, the run
times I get are longer than with PARDISO. Also, it’s using the most power. SPOOLES really isn’t an option for me, because it can not solve large models with a reasonable amount of RAM.