[mvapich-discuss] mvapich2-1.6rc2 failed to build on rhel4.8 system

Jonathan Perkins perkinjo at cse.ohio-state.edu
Thu Feb 17 12:06:17 EST 2011


Limin:
I am attaching (and posting below in case the attachment is rejected)
the patch that should resolve this problem.  Please apply it by
navigating to the top level of the mvapich2 source and using `patch
-p0 < coll_shmem.patch'.  Please let us know if this resolves your
problem.

Index: src/mpi/comm/create_2level_comm.c
===================================================================
--- src/mpi/comm/create_2level_comm.c	(revision 4402)
+++ src/mpi/comm/create_2level_comm.c	(revision 4403)
@@ -16,7 +16,7 @@
 #include <mpimem.h>
 #include "mpidimpl.h"
 #include "mpicomm.h"
-#include "coll_shmem.h"
+#include "coll_shmem_internal.h"
 #include <pthread.h>
 #ifndef GEN_EXIT_ERR
 #define GEN_EXIT_ERR    -1
Index: src/mpid/ch3/channels/mrail/src/rdma/ch3_shmem_coll.c
===================================================================
--- src/mpid/ch3/channels/mrail/src/rdma/ch3_shmem_coll.c	(revision 4402)
+++ src/mpid/ch3/channels/mrail/src/rdma/ch3_shmem_coll.c	(revision 4403)
@@ -40,6 +40,8 @@
 #endif

 #include "coll_shmem.h"
+#include "coll_shmem_internal.h"
+
 #include <stdio.h>

 typedef unsigned long addrint_t;
Index: src/mpid/ch3/channels/mrail/src/rdma/coll_shmem_internal.h
===================================================================
--- src/mpid/ch3/channels/mrail/src/rdma/coll_shmem_internal.h	(revision 0)
+++ src/mpid/ch3/channels/mrail/src/rdma/coll_shmem_internal.h	(revision 4403)
@@ -0,0 +1,57 @@
+/*
+ * This source file was derived from code in the MPICH-GM implementation
+ * of MPI, which was developed by Myricom, Inc.
+ * Myricom MPICH-GM ch_gm backend
+ * Copyright (c) 2001 by Myricom, Inc.
+ * All rights reserved.
+ */
+
+/* Copyright (c) 2003-2011, The Ohio State University. All rights
+ * reserved.
+ *
+ * This file is part of the MVAPICH2 software package developed by the
+ * team members of The Ohio State University's Network-Based Computing
+ * Laboratory (NBCL), headed by Professor Dhabaleswar K. (DK) Panda.
+ *
+ * For detailed copyright and licensing information, please refer to the
+ * copyright file COPYRIGHT in the top level MVAPICH2 directory.
+ *
+ */
+
+
+#ifndef _COLL_SHMEM_INTERNAL
+#define _COLL_SHMEM_INTERNAL
+#include <pthread.h>
+#include "smp_smpi.h"
+#include "coll_shmem.h"
+
+
+#define SHMEM_COLL_NUM_PROCS 32
+#define SHMEM_COLL_NUM_COMM  20
+
+/* the shared area itself */
+typedef struct {
+    volatile int
child_complete_bcast[SHMEM_COLL_NUM_COMM][SHMEM_COLL_NUM_PROCS];   /*
use for initial synchro */
+    volatile int
root_complete_bcast[SHMEM_COLL_NUM_COMM][SHMEM_COLL_NUM_PROCS];
+    volatile int
child_complete_gather[SHMEM_COLL_NUM_COMM][SHMEM_COLL_NUM_PROCS];   /*
use for initial synchro */
+    volatile int
root_complete_gather[SHMEM_COLL_NUM_COMM][SHMEM_COLL_NUM_PROCS];
+    volatile int barrier_gather[SHMEM_COLL_NUM_COMM][SHMEM_COLL_NUM_PROCS];
+    volatile int barrier_bcast[SHMEM_COLL_NUM_COMM][SHMEM_COLL_NUM_PROCS];
+    volatile int shmem_comm_count;
+    pthread_spinlock_t shmem_coll_lock;
+
+#if defined(CKPT)
+    volatile int cr_smc_cnt;
+    volatile pthread_spinlock_t cr_smc_spinlock;
+#endif
+
+    /* the collective buffer */
+    char shmem_coll_buf;
+} shmem_coll_region;
+
+#define SHMEM_COLL_BUF_SIZE (g_shmem_coll_blocks *
SHMEM_COLL_BLOCK_SIZE + sizeof(shmem_coll_region))
+shmem_coll_region *shmem_coll;
+
+
+
+#endif  /* _COLL_SHMEM_INTERNAL */
Index: src/mpid/ch3/channels/mrail/src/rdma/coll_shmem.h
===================================================================
--- src/mpid/ch3/channels/mrail/src/rdma/coll_shmem.h	(revision 4402)
+++ src/mpid/ch3/channels/mrail/src/rdma/coll_shmem.h	(revision 4403)
@@ -83,35 +83,9 @@

 #endif

-#define SHMEM_COLL_NUM_PROCS 32
-#define SHMEM_COLL_NUM_COMM  20
-
 #define SHMEM_COLL_BLOCK_SIZE (g_smpi.num_local_nodes *
g_shmem_coll_max_msg_size)

-/* the shared area itself */
-typedef struct {
-    volatile int
child_complete_bcast[SHMEM_COLL_NUM_COMM][SHMEM_COLL_NUM_PROCS];   /*
use for initial synchro */
-    volatile int
root_complete_bcast[SHMEM_COLL_NUM_COMM][SHMEM_COLL_NUM_PROCS];
-    volatile int
child_complete_gather[SHMEM_COLL_NUM_COMM][SHMEM_COLL_NUM_PROCS];   /*
use for initial synchro */
-    volatile int
root_complete_gather[SHMEM_COLL_NUM_COMM][SHMEM_COLL_NUM_PROCS];
-    volatile int barrier_gather[SHMEM_COLL_NUM_COMM][SHMEM_COLL_NUM_PROCS];
-    volatile int barrier_bcast[SHMEM_COLL_NUM_COMM][SHMEM_COLL_NUM_PROCS];
-    volatile int shmem_comm_count;
-    pthread_spinlock_t shmem_coll_lock;

-#if defined(CKPT)
-    volatile int cr_smc_cnt;
-    volatile pthread_spinlock_t cr_smc_spinlock;
-#endif
-
-    /* the collective buffer */
-    char shmem_coll_buf;
-} shmem_coll_region;
-
-#define SHMEM_COLL_BUF_SIZE (g_shmem_coll_blocks *
SHMEM_COLL_BLOCK_SIZE + sizeof(shmem_coll_region))
-shmem_coll_region *shmem_coll;
-
-
 #define COLL_COUNT              7
 #define COLL_SIZE               3
 #define ALLGATHER_ID            0


On Thu, Feb 17, 2011 at 12:02 AM, Devendar Bureddy
<bureddy at cse.ohio-state.edu> wrote:
> Limin
>
> Thanks for trying MVAPICH2 and notifying this issue. We already seen same
> comparability issue  from others who are running on RHEL4. Next coming release(
> MVAPICH2-1.6 RC3)  has a fix for this issue along with other
> optimizations. This will be released in a couple of days. Can you please
> try with upcoming release.
>
> -Devendar
>
> On Wed, Feb 16, 2011 at 11:35 PM, Limin Gu <lgu at penguincomputing.com> wrote:
>> Hi,
>>
>> I have successfully built mvapich2-1.6rc2 on rhel5.5 system with gnu, pgi
>> and intel compilers, everything seem work just fine.
>>
>> But it failed to build on rhel4.8 system. I am not doing anything fancy,
>> just try to build it with gnu compilers with all default configure, but make
>> failed with this error:
>> ...
>> ...
>>   CC              red_scat_block.c
>>   CC              allgather_osu.c
>> In file included from allgather_osu.c:21:
>> ../../../src/mpid/ch3/channels/mrail/src/rdma/coll_shmem.h:100: error:
>> syntax error before "pthread_spinlock_t"
>> ../../../src/mpid/ch3/channels/mrail/src/rdma/coll_shmem.h:100: warning: no
>> semicolon at end of struct or union
>> ../../../src/mpid/ch3/channels/mrail/src/rdma/coll_shmem.h:109: error:
>> syntax error before '}' token
>> ../../../src/mpid/ch3/channels/mrail/src/rdma/coll_shmem.h:109: warning:
>> data definition has no type or storage class
>> ../../../src/mpid/ch3/channels/mrail/src/rdma/coll_shmem.h:112: error:
>> syntax error before '*' token
>> ../../../src/mpid/ch3/channels/mrail/src/rdma/coll_shmem.h:112: warning:
>> data definition has no type or storage class
>> make[3]: *** [allgather_osu.o] Error 1
>>
>>
>> What do I miss on rhel4.8 system?
>>
>> Thank you!
>>
>> Limin
>>
>>
>> _______________________________________________
>> mvapich-discuss mailing list
>> mvapich-discuss at cse.ohio-state.edu
>> http://mail.cse.ohio-state.edu/mailman/listinfo/mvapich-discuss
>>
>>
>
> _______________________________________________
> mvapich-discuss mailing list
> mvapich-discuss at cse.ohio-state.edu
> http://mail.cse.ohio-state.edu/mailman/listinfo/mvapich-discuss
>
>



-- 
Jonathan Perkins
http://www.cse.ohio-state.edu/~perkinjo
-------------- next part --------------
A non-text attachment was scrubbed...
Name: coll_shmem.patch
Type: application/octet-stream
Size: 4681 bytes
Desc: not available
Url : http://mail.cse.ohio-state.edu/pipermail/mvapich-discuss/attachments/20110217/cb47f260/coll_shmem-0001.obj


More information about the mvapich-discuss mailing list