|[eigen] Parallel matrix multiplication causes heap allocation|
[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]
|Dear Eigen team,|
first of all, thank you for all your effort to create such a great math library. I really love using it.
I’ve got a question about your parallelization routines. I want to calculate a parallel (omp based) matrix multiplication (result: 500 x 250 matrix) without allocating any new space in the meantime. So I have activated „Eigen::internal::set_is_malloc_allowed(false)“ to check that nothing goes wrong. However, my program crashes with the error message
„Assertion failed: (is_malloc_allowed() && "heap allocation is forbidden (EIGEN_RUNTIME_NO_MALLOC is defined and g_is_malloc_allowed is false)"), function check_that_malloc_is_allowed, file /Users/xxx//libs/eigen/Eigen/src/Core/util/Memory.h, line 143.“. Is this behaviour desired? Should there be an allocation before doing parallel calculations? Or am I doing something wrong?
Thanks in advance.
Eigen Version: 3.3.1 (commit f562a193118d)
Attached: Screenshot showing the last function calls
|Mail converted by MHonArc 2.6.19+||http://listengine.tuxfamily.org/|