Hello Wolfgang, > Roland: Finished the review. Code is in Excellent state! RePriMand has > been added to the thornlist. Concerning your question about running arbitrary executables other than the main Cactus code for the test. It occurred to me that we have the capability to postprocess test data:
https://www.einsteintoolkit.org/usersguide/UsersGuide.html#verbatim-92 and just above using the: POSTPROC tool.exe regex-of-files notation. Nothing really stops you from having a "dummy" Cactus test that produces an output file and abusing the postproc option to run the actual test executable (and completely ignoring the output file content). Horrible, but maybe a first try. Note that there are issues with this. Namely the postproc utility will run on on whichever node ends up running the testsuite driver Perl script. This could be your laptop, the login node of a cluster or a compute node in a cluster (or a launch node in something like a Cray XE system). There is no guarantee that a login node will be able to run code compiled for the compute nodes (which your tool would be since Cactus *only* knows how to compile for compute nodes, not for the login nodes). This is an issue when cross-compiling. Note that compiling for KNL compute nodes using say a Broadwell login node (or even SkyLake) is cross compiling since the KNL have instructions that the login node cannot execute (and the Intel compiler inserts startup code to main() that checks for them and aborts if they are not found). Similarly some clusters may just not let you run any compiled code without the equivalent of mpirun (again Crays are good examples for this). Since the testsuite code does not prefix the tools by mpirun, they would fail. Similarly some clusters do not let you execute mpirun on the login nodes. There are also (to no ones surprise I a guess) issues with executing a secondary tool from within cactus_sim. Namely many MPI implementations do not let you. See eg: https://www.open-mpi.org/faq/?category=tuning#fork-warning and note that cactus_sim is an MPI process (it is started via mpirun, it calls MPI_Init() in its main()). Other MPI implementations have similar restrictions. Yours, Roland -- My email is as private as my paper mail. I therefore support encrypting and signing email messages. Get my PGP key from http://pgp.mit.edu .
pgpy720EnKGYj.pgp
Description: OpenPGP digital signature
_______________________________________________ Users mailing list [email protected] http://lists.einsteintoolkit.org/mailman/listinfo/users
