Hi Jian and Abhishek,

Thanks for reporting this.

When configured with --enable-thread-cs=per-object, MPID_cc_t will be defined as OPA_int_t, which can not be directly compared with 0 using "==". 

I will create a patch for this.

Best regards,

--
Huiwei Lu
Postdoc Appointee
Mathematics and Computer Science Division
Argonne National Laboratory

On Thu, Mar 26, 2015 at 4:32 PM, Jian Lin <lin.2180@osu.edu> wrote:
Hi, Abhishek,

Thanks for your note. By using the full configure options you provided,
we are able to reproduce this behavior. However, MVAPICH2 2.1rc2 is
based on MPICH 3.1.4. We found that the error also exists with the
MPICH 3.1.4/3.2b1 even if using ch3:nemesis device. It will be good if
the MPICH team resolves this. I am cc'ing this note to the MPICH team.

Hi, MPICH community,

The forwarded compilation error reported by the user is related to
unmatched MPID_cc_t typedefs if some thread-related configure options
are used. The default build without these thread-related options does
not have any issue. Will you please take a look. Thanks!


On Mon, 23 Mar 2015 20:29:12 -0400
Abhishek Kulkarni <adkulkar@indiana.edu> wrote:

> Jonathan,
>
> I am using the following configure flags:
>
> ./configure --enable-threads=multiple --enable-async-progress
> --with-device=ch3:psm --enable-thread-cs=per-object CFLAGS=-O3
> --enable-refcount=lock-free --enable-handle-allocation=tls
> --with-atomic-primitives
>
> The distribution is Ubuntu 12.04.5 LTS and the compiler version is gcc
> (Ubuntu/Linaro 4.6.4-1ubuntu1~12.04) 4.6.4.
>
> Abhishek
>
>
> On Tue, Mar 17, 2015 at 5:06 PM, Jonathan Perkins <
> perkinjo@cse.ohio-state.edu> wrote:
>
> > Thank you for your report.  When trying to reproduce this problem
> > locally I am running into a similar but different build error.  Can
> > you provide us more information on how you're building?  Please let
> > us know the Linux distribution and version and vendor of the
> > compiler that you're using.
> >
> > On Tue, Mar 17, 2015 at 2:02 PM Abhishek Kulkarni
> > <adkulkar@indiana.edu> wrote:
> >
> >> Hello,
> >>
> >> While trying to build mvapich 2.2rc2, I run into a build failure
> >> when I use the following two flags together: --with-device=ch3:psm
> >> --enable-thread-cs=per-object
> >>
> >> Is this a known issue? Since I expect to mostly run in a hybrid
> >> (OpenMP+MPI) configuration, I am assuming that the granularity of
> >> critical sections might be critical for good performance.
> >>
> >>   CC       src/mpid/ch3/src/lib_libmpi_la-ch3u_rma_acc_ops.lo
> >>   CC       src/mpid/ch3/src/lib_libmpi_la-ch3u_rma_ops.lo
> >>   CC       src/mpid/ch3/src/lib_libmpi_la-ch3u_rma_reqops.lo
> >>   CC       src/mpid/ch3/src/lib_libmpi_la-ch3u_rma_sync.lo
> >>   CC       src/mpid/ch3/src/lib_libmpi_la-ch3u_rndv.lo
> >> src/mpid/ch3/src/ch3u_handle_recv_req.c: In function
> >> ‘MPIDI_CH3_ReqHandler_FOPComplete’:
> >> src/mpid/ch3/src/ch3u_handle_recv_req.c:963:9: warning: passing
> >> argument 4 of ‘MPIDI_CH3_iStartMsgv’ from incompatible pointer
> >> type [enabled by default]
> >> ./src/mpid/ch3/include/mpidimpl.h:1580:5: note: expected ‘struct
> >> MPID_Request **’ but argument is of type ‘struct MPID_Request *’
> >>   CC       src/mpid/ch3/src/lib_libmpi_la-ch3u_eager.lo
> >>   CC       src/mpid/ch3/src/lib_libmpi_la-ch3u_eagersync.lo
> >>   CC       src/mpid/ch3/src/lib_libmpi_la-ch3u_win_fns.lo
> >>   CC       src/mpid/ch3/src/lib_libmpi_la-mpid_abort.lo
> >>   CC       src/mpid/ch3/src/lib_libmpi_la-mpid_cancel_recv.lo
> >>   CC       src/mpid/ch3/src/lib_libmpi_la-mpid_cancel_send.lo
> >> src/mpid/ch3/src/ch3u_rndv.c: In function
> >> ‘MPIDI_CH3_PktHandler_RndvReqToSend’:
> >> src/mpid/ch3/src/ch3u_rndv.c:210:28: error: invalid operands to
> >> binary == (have ‘MPID_cc_t’ and ‘int’)
> >> make[2]: *** [src/mpid/ch3/src/lib_libmpi_la-ch3u_rndv.lo] Error 1
> >> make[2]: *** Waiting for unfinished jobs....
> >> src/mpid/ch3/src/ch3u_eager.c: In function
> >> ‘MPIDI_CH3_PktHandler_EagerSend’:
> >> src/mpid/ch3/src/ch3u_eager.c:880:28: error: invalid operands to
> >> binary == (have ‘MPID_cc_t’ and ‘int’)
> >> src/mpid/ch3/src/ch3u_eager.c: In function
> >> ‘MPIDI_CH3_PktHandler_ReadySend’:
> >> src/mpid/ch3/src/ch3u_eager.c:1022:28: error: invalid operands to
> >> binary == (have ‘MPID_cc_t’ and ‘int’)
> >> make[2]: *** [src/mpid/ch3/src/lib_libmpi_la-ch3u_eager.lo] Error 1
> >> src/mpid/ch3/src/ch3u_eagersync.c: In function
> >> ‘MPIDI_CH3_PktHandler_EagerSyncSend’:
> >> src/mpid/ch3/src/ch3u_eagersync.c:259:28: error: invalid operands
> >> to binary == (have ‘MPID_cc_t’ and ‘int’)
> >> make[2]: *** [src/mpid/ch3/src/lib_libmpi_la-ch3u_eagersync.lo]
> >> Error 1
> >>
> >> Thanks,
> >> Abhishek
> >> _______________________________________________
> >> mvapich-discuss mailing list
> >> mvapich-discuss@cse.ohio-state.edu
> >> http://mailman.cse.ohio-state.edu/mailman/listinfo/mvapich-discuss
> >>
> >



--
Jian Lin
http://linjian.org
_______________________________________________
discuss mailing list     discuss@mpich.org
To manage subscription options or unsubscribe:
https://lists.mpich.org/mailman/listinfo/discuss