MFIX-24.4 Parallel Processing Error on Ubuntu 22.04

Hello, everyone,

I’ve recently installed MFIX-24.4 on my Ubuntu 22.04 system and have been testing the DMP parallel computation using the built-in silane_pyrolysis_tfm case. The model runs successfully when I use a single core for the computations. However, when I increase the number of cores to 2, I encounter the following error during the calculation:

Could anyone provide some insight or suggestions on how to resolve this issue?

Thank you in advance for your help!

Best regards,

As always it’s helpful if you attach you submit a full bug report as this includes system information and project files.

``use-hwthreads-cpus` is a flag to mpirun that allows the use of hyperthreads. Without this flag, you are limited to the number of physical rather than logical CPU cores. We add this flag automatically to the mpirun command line, as most users want this, but you can disable it:

The mpirun which is bundled with the MFiX conda package supports this flag but perhaps you are using a different mpirun.

Hi, Charles,

Thank you for your response.

I have removed the use-hwthreads-cpus command as suggested, but unfortunately, the issue still persists. The full bug report has been attached.

silane_pyrolysis_tfm_2d_2025-01-14T092012.454685.zip (161.2 KB)

Best regards,

mfixversioninfo.txt shows:

openmpi:             HYDRA build details:

which means you are not using the build of mpi that is bundled with MFiX. This is OK, but it looks like this version does not support the same set of flags that we expect.

In the console window (partially covered up by the error popup in your screenshot) you can see the actual mpirun command line. It looks like even after you disable --use-hwthread-cpus there are some other flags being automatically set:

Starting mpirun -mca mpi_warn_on_fork 0 -mca mca_base_component_show_load_errors 0 -np 4 /home/cgw/miniforge3/envs/mfix-24.4/bin/mfixsolver_dmp -s -f /home/cgw/fluid_bed_tfm_2d/fluid_bed_tfm_2d.mfx

We should probably have those mpirun -mca mpi_warn_on_fork 0 -mca mca_base_component_show_load_errors 0 exposed in the GUI so users can control them. In the current code they are getting added automatically with no way to disable.

As a workaround you can edit the file

$CONDA_PREFIX/lib/python3.11/site-packages/mfixgui/solver/process.py

and change the code at line 88 from

            run_cmd += ["-mca", "mpi_warn_on_fork", "0",  #https://www.open-mpi.org/faq/?category=tuning#fork-warning
                        "-mca", "mca_base_component_show_load_errors", "0", #https://github.com/open-mpi/ompi/issues/7752
                        "-np", str(node_count)]

to

            run_cmd += ["-np", str(node_count)]

and restart MFiX. This should fix the problem.

Thanks for the report, and sorry for the trouble

– Charles