I was wondering what is the default value of the stack limit for every OMP/MKL thread when we use MKL functions ? Does it dynamically vary based on some MKL/OMP heuristic or can it be set?
Does it relate to the corresponding stack shell resource limit in effect for the process calling MKL functions ?
At times I would like to let 1 MKL thread be able to use the entire memory of a node but at other times I would like to set OMP_NUM_THREADS equal to the number of cores. In the past, small stack limit would let Fortran code using MKL crash so I increased it to a rather large value. I do not want to have stack limits larger than what they should be though as with very large shell stack limit other multi-threaded processes started having problem lauching threads....
These are the versions of MKL I am interested in (and hopefully soon only for the latter one :) are
MKL v. 10.2.6.038
MKL v. 10.3.10.319