Adding test in C/S mode for a plugin

Hi,

I’m currently setting up test in C/S mode for a plugin that i’m in charge of.
I’m using the paraview_add_client_server_tests function and it gave me satisfaction until i needed to run more than 2 servers through mpiexec.

First i have been trying to use the NUMPROCS keyword, but it seems to have no effect.
I finally succeeded by using the environment variable SMTESTDRIVER_MPI_NUMPROCS.
Is it the right way to specify the number of server required?

The other difficulty i was facing, is that my laptop has 4 physical cores with hyperthreading on each of them which gives me 8 virtual cores.
However, by default, mpiexec refuses to launch more than 4 threads. I need to use the --use-hwthread-cpus mpiexec option.

It seems like, it is not possible to pass option to mpiexec dyamically during test execution. Am i right?
The only way i found was to pass the -DMPI_PREFLAGS="--use-hwthread-cpus" cmake option to paraview and rebuild it.
I was wondering if there was another, easier way, to do it?

Thanks in advance
G.

Yes, that is the only way. NUMPROCS is not exposed but I think it should be. Do not hesitate to open an issue/MR for this.

it is not possible to pass option to mpiexec dyamically during test execution.

Sadly not, but it could be an interesting option to add.

@mwestphal i opened https://gitlab.kitware.com/paraview/paraview/-/issues/21833.

Should i open another issue for the dynamic management of the mpiexec options?

Yes, that would be two separate issues.

1 Like

Ok. Done. https://gitlab.kitware.com/paraview/paraview/-/issues/21834