J. Huang, L. Kong, X.-Y. Liu, W. Qu and G. Chen. A C++ library for tensor decomposition. International Performance Computing and Communications Conference (IPCCC), 2019. A C/C++ library for highly efficient and scalable tensor decompositions.
I have been trying to use this library to compute a CP-decomposition of a vector, but could not obtain deterministic results even after fixing the seed for the random number generator.
It seems like in the cp_als()-function call, an array Ct is allocated which is then used uninitialized in a call to cblas_dgemm(), which actually requires all its arrays to be initialized.
Therefore the output of the function is dependent on the state of the memory and not deterministic, which makes the library unsuitable for reliably computing a CP-decomposition.
I have been trying to use this library to compute a CP-decomposition of a vector, but could not obtain deterministic results even after fixing the seed for the random number generator.
It seems like in the cp_als()-function call, an array Ct is allocated which is then used uninitialized in a call to cblas_dgemm(), which actually requires all its arrays to be initialized. Therefore the output of the function is dependent on the state of the memory and not deterministic, which makes the library unsuitable for reliably computing a CP-decomposition.