[mvapich-discuss] Building MVAPICH2 1.8a2/1.7 difficulties with PGI 12.2

Thomas Rothrock CTR SMDC SimCtr/GaN Corporation thomas.w.rothrock.ctr at us.army.mil
Fri Feb 24 15:10:36 EST 2012


This is a problem in PGI 12.2-0 and affects more than just the MVAPICH2 1.8 trunk.  My first workaround was the following patch:

        --- mvapich2-a/src/pm/hydra/tools/topo/hwloc/hwloc/src/distances.c 2011-10-27 01:28:25.000000000 -0500
        +++ mvapich2-b/src/pm/hydra/tools/topo/hwloc/hwloc/src/distances.c 2012-02-24 13:18:41.000000000 -0600
        @@ -10,7 +10,13 @@
         #include <private/private.h>
         #include <private/debug.h>

        +#if (defined (_GNU_SOURCE)&&(__PGIC__==12)&&(__PGIC_MINOR__==2))
        +#undef _GNU_SOURCE
        +#include <float.h>
        +#define _GNU_SOURCE
        +#else
         #include <float.h>
        +#endif

         /* called during topology init */
         void hwloc_topology_distances_init(struct hwloc_topology *topology)


I received the following response from PGI earlier today:

        Unfortunately, the correction did not make it into the 12.2 release

        In the two files listed below,

        change
        #if !defined(_GNU_SOURCE)
        to
        #if !defined(_GNU_SOURCE) || !defined(__cplusplus)

        /opt/pgi/linux86-64/12.2/include/float.h
        /opt/pgi/linux86-64/12.2/include/limits.h

The latter is likely the best workaround, but relies on you being able to modify the PGI 12.2 installation on affected systems.

--Tom



More information about the mvapich-discuss mailing list