Update lapack wrapper functions to use LAPACK_INT - #369
Conversation
`int` is used here and there in functions inside `lapack_wrap.cc` and `algs.cc`. Replace them with `LAPACK_INT` such that itensor can be linked to BLAS/LAPACK with ILP64.
|
Thanks for the PR. Apparently before this change users were also experiencing crashes when the memory usage became large: |
|
The alloc-related crash is related to another PR: #368. On that note, I notice that |
|
That sounds like a good idea and not too hard to start doing. Just to be clear, do you think this is primarily an issue just in these lower-level wrappers or even in higher level code? (We use |
|
The integer size issue can cause problems at all levels, and it's safe to use larger integers unless there's a guarantee that it will be small. Right now I haven't found any problem with Linux and macOS. On Windows it puts a restriction on the size of tensors since All in all, I think replacing The only issue with |
intis used here and there in functions insidelapack_wrap.ccandalgs.cc.Replace them with
LAPACK_INTso that ITensor can be linked to BLAS/LAPACK with ILP64.