Hi Daniel,
I thought I had replied to this before, but it seems that somehow my reply got deleted. I’m confused by the output shown, in particular, what is causing the output like
Is there any output after the end of what you showed, or is that the point at which the code crashes?
Can you provide the full list of installed packages and version, which can be obtained by running conda list?
Regards,
Ray
--
You received this message because you are subscribed to a topic in the Google Groups "Cantera Users' Group" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/cantera-users/M_g4RINP_FY/unsubscribe.
To unsubscribe from this group and all its topics, send an email to cantera-user...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/cantera-users/ca021df5-51ad-4bf6-aa8c-75fbbbd3fd6bn%40googlegroups.com.
Hi Daniel,
Ah, I see, that makes more sense. The Python trace output is unfortunately not that useful, as the actual solver is fully in C++ — all you see are the hooks for the Python callback where control is briefly returned to Python that allow you to interrupt the code with “Ctrl+C”. To get a traceback for where the C++ code is at the point of the crash, you can add
ct.print_stack_trace_on_segfault()near the top of the script, after importing the Cantera module. This is a new function in Cantera 3.1, so won’t work with your Cantera 3.0 install. Hopefully this will point us in a more useful direction.
Regards,
Ray
To view this discussion visit https://groups.google.com/d/msgid/cantera-users/ebcfe099-1471-4eb2-8986-29be23fdb8a1n%40googlegroups.com.
Hi Daniel,
Thanks, that traceback definitely suggests something fishy going on within MKL.
You don’t need to build Cantera from scratch to use OpenBLAS. You should be able to swap out the package providing BLAS/LAPACK within your Conda environment by running:
conda install 'libblas=*=*openblas' to switch to OpenBLAS, or conda install 'libblas=*=*mkl' to force it back to MKL.
The caveat about multithreaded BLAS/LAPACK is mostly irrelevant in the case of the 1D solver. My experience has been that the parallel algorithms for banded matrices in MKL aren’t that great and you might be better off running with a single thread (by setting the OMP_NUM_THREADS environment variable).
Regards,
Ray
To view this discussion visit https://groups.google.com/d/msgid/cantera-users/0508e663-2977-4f62-ad72-481f12d1a188n%40googlegroups.com.