On 13 Apr 2017, at 00:32, David Gore <[email protected]> wrote:

> (I don't know if people prefer bottom-posting or top-posting, so I'm just 
> going with GMail's default)
> 
> As usually happens, 10 minutes (ok, an hour) after I post a problem, I find a 
> solution.  The problem was that, in 

Hi,

Good to hear it works, and thanks for posting the solution for others to see!

The file Cactus/simfactory/mdb/optionlists/centos.cfg contains a configuration 
for CentOS 7, which is probably the closest to RHEL 6.  Indeed, it has

OPENMP           = yes
CPP_OPENMP_FLAGS = -fopenmp
FPP_OPENMP_FLAGS = -D_OPENMP
C_OPENMP_FLAGS   = -fopenmp
CXX_OPENMP_FLAGS = -fopenmp
F77_OPENMP_FLAGS = -fopenmp
F90_OPENMP_FLAGS = -fopenmp

because it is using gcc.  

In case you didn't catch it, when the Cactus configure stage says that the 
compiler cannot create executables, what it really means is that there was an 
error running the compiler during autoconf, and the log of the error can be 
found in

        configs/sim/config-data/config.log

I don't remember whether it tells you this or not.

Another option to using OpenMP is to use MPI for parallelisation, even on a 
single host.  I think for that you should be able to use

ppn = 8
max-num-threads=1
num-threads=1
nodes=1 

The meaning of these variables is described at 

        
http://simfactory.org/info/documentation/userguide/processterminology.html.

You should then be able to run using --procs 8, and parallelisation will happen 
using MPI.  "num_threads" is really "num_openmp_threads_per_process", so 
setting it to 1 means "don't use multiple threads per process", i.e. 
parallelise by creating more processes, not more threads.

Note that static_tov has quite a small grid, so parallelisation efficiency is 
probably not very good.

-- 
Ian Hinder
http://members.aei.mpg.de/ianhin

_______________________________________________
Users mailing list
[email protected]
http://cactuscode.org/mailman/listinfo/users

Reply via email to