[Users] IOHDF5 Error

Ian Hinder ian.hinder at aei.mpg.de
Mon Mar 13 07:49:46 CDT 2017


On 13 Mar 2017, at 13:14, Gwyneth Allwright <allgwy001 at myuct.ac.za> wrote:

> Hi Ian, Frank, Erik,
> 
> Thanks for the comments!
> 
> Ian, I'm using my full cluster core allocation for simulations at the moment, but should be able to get back to you about adjusting CPPFLAGS in a few days' time. The same goes for changing the number of MPI processes (I was indeed using a much higher number of processes when running on the cluster).

Does the problem appear immediately?  Can you run on your laptop with the same number of MPI processes as you were using on the cluster when you saw the error?

> Frank, I haven't been able to find a (direct and obvious) indication of which bboxset implementation is used in the output. But I've attached it to the ticket, so you're welcome to have a look. (Erik did say that it was bboxset2.)

The error indicates that it is definitely using bboxset2 on the cluster.  The question is what is used on your laptop.  The logic that decides which implementation to use is in

arrangements/Carpet/CarpetLib/src/defs.hh:

// Disable bboxset2 if C++11 is not supported
#if !defined(HAVE_CCTK_CXX_AUTO_SPECIFIER) ||                                  \
    !defined(HAVE_CCTK_CXX_LAMBDA) || !defined(HAVE_CCTK_CXX_RANGE_BASED_FOR)
#ifndef CARPET_DISABLE_BBOXSET2
#define CARPET_WARN_DISABLE_BBOXSET2
#endif
#undef CARPET_DISABLE_BBOXSET2
#define CARPET_DISABLE_BBOXSET2
#endif

#ifndef CARPET_DISABLE_BBOXSET2
#define CARPET_ENABLE_BBOXSET2
#define CARPET_USE_BBOXSET2
#endif

Assuming that you are using gcc on your laptop, you could add compile-time output which will tell you which is being used:

// Disable bboxset2 if C++11 is not supported
#if !defined(HAVE_CCTK_CXX_AUTO_SPECIFIER) ||                                  \
    !defined(HAVE_CCTK_CXX_LAMBDA) || !defined(HAVE_CCTK_CXX_RANGE_BASED_FOR)
#ifndef CARPET_DISABLE_BBOXSET2
#define CARPET_WARN_DISABLE_BBOXSET2
#endif
#undef CARPET_DISABLE_BBOXSET2
#define CARPET_DISABLE_BBOXSET2
#pragma message "bboxset2 disabled"
#endif

#ifndef CARPET_DISABLE_BBOXSET2
#define CARPET_ENABLE_BBOXSET2
#define CARPET_USE_BBOXSET2
#pragma message "bboxset2 enabled"
#pragma message "bboxset2 used"
#endif

(the only changes are to add the pragma lines).

On my laptop, this gives

COMPILING arrangements/Carpet/CarpetLib/src/bboxset1.cc
In file included from /Users/ian/Cactus/EinsteinToolkitGit/arrangements/Carpet/CarpetLib/src/bboxset1.cc:9:0:
/Users/ian/Cactus/EinsteinToolkitGit/arrangements/Carpet/CarpetLib/src/defs.hh:34:17: note: #pragma message: bboxset2 enabled
 #pragma message "bboxset2 enabled"
                 ^
/Users/ian/Cactus/EinsteinToolkitGit/arrangements/Carpet/CarpetLib/src/defs.hh:35:17: note: #pragma message: bboxset2 used
 #pragma message "bboxset2 used"


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



More information about the Users mailing list