Enable ZC Direct API for multicore builds to support the refactored ZC EM API 59/4859/2
authorNitin Bhat <nbhat4@illinois.edu>
Wed, 12 Dec 2018 18:42:05 +0000 (12:42 -0600)
committerNitin Bhat <nbhat4@illinois.edu>
Wed, 12 Dec 2018 18:50:36 +0000 (12:50 -0600)
This commit removes the unused ZC EM API from multicore builds.
Additionally, this commit resolves the multicore build failure
seen in last night's autobuild.

Error message:
../../../../bin/charmc -g -Werror=vla  -o lbObject.o lbObject.C
/scratch/autobuild/multicore/charm/multicore-linux-x86_64/bin/../lib/libck.a(init.o):
In function `_initCharm(int, char**)':
/scratch/autobuild/multicore/charm/multicore-linux-x86_64/tmp/init.C:1293:
undefined reference to `CmiSetEMNcpyAckHandler'
/scratch/autobuild/multicore/charm/multicore-linux-x86_64/bin/../lib/libck.a(ckrdma.o):
In function `handleReverseEntryMethodApiCompletion(ncpystruct*)':
/scratch/autobuild/multicore/charm/multicore-linux-x86_64/tmp/ckrdma.C:639:
undefined reference to `CmiInvokeRemoteAckHandler'
collect2: error: ld returned 1 exit status

Change-Id: I8b05d7253458cd49d253d112e73e112873f312c2

src/arch/netlrts/conv-common.h
src/arch/netlrts/machine-onesided.h

index 7135b34f83fb6ef929670f10d22ea134f0546874..408daee32233a1d804179d51a80478bb5eb7071f 100644 (file)
@@ -54,6 +54,8 @@
 
 #define CMK_ONESIDED_IMPL                                  CMK_MULTICORE
 
+#define CMK_ONESIDED_DIRECT_IMPL                           CMK_MULTICORE
+
 #define CMK_CMA_MIN                                        32768
 
 #define CMK_CMA_MAX                                        INT_MAX
index e3ccdc83d9341a1ef6c5cb6932f2d4364d79af94..db9c6ab865cb85ae5f65e24f5a5104ba154e3be9 100644 (file)
@@ -1,63 +1,16 @@
 #ifndef NETLRTS_MACHINE_ONESIDED_H
 #define NETLRTS_MACHINE_ONESIDED_H
 
-/*
- * None of these should ever be called, since this header is only included
- * if CMK_ONESIDED_IMPL is 1, and for netlrts that is currently only true for
- * multicore builds, which always do a direct memcpy of the source buffer
- * to a message allocated by the receiver.
- *
- * TODO: RDMA support for non-multicore netlrts builds.
- */
+void LrtsSetRdmaBufferInfo(void *info, const void *ptr, int size, unsigned short int mode) {}
 
-void LrtsSetRdmaInfo(void *dest, int destPE, int numOps) {
+void LrtsIssueRget(NcpyOperationInfo *ncpyOpInfo){
   CmiAbort("Should never reach here!");
 }
 
-void LrtsSetRdmaOpInfo(void *dest, const void *ptr, int size, void *ack, int destPE) {
+void LrtsIssueRput(NcpyOperationInfo *ncpyOpInfo){
   CmiAbort("Should never reach here!");
 }
 
-int LrtsGetRdmaOpInfoSize(void) {
-  CmiAbort("Should never reach here!");
-  return -1;
-}
-
-int LrtsGetRdmaGenInfoSize(void) {
-  CmiAbort("Should never reach here!");
-  return -1;
-}
-
-int LrtsGetRdmaInfoSize(int numOps) {
-  CmiAbort("Should never reach here!");
-  return -1;
-}
-
-void LrtsSetRdmaRecvInfo(void *dest, int numOps, void *charmMsg, void *rdmaInfo, int msgSize) {
-  CmiAbort("Should never reach here!");
-}
-
-void LrtsSetRdmaRecvOpInfo(void *dest, void *buffer, void *src_ref, int size, int opIndex, void *rdmaRecv) {
-  CmiAbort("Should never reach here!");
-}
-
-int LrtsGetRdmaOpRecvInfoSize(void) {
-  CmiAbort("Should never reach here!");
-  return -1;
-}
-
-int LrtsGetRdmaGenRecvInfoSize(void) {
-  CmiAbort("Should never reach here!");
-  return -1;
-}
-
-int LrtsGetRdmaRecvInfoSize(int numOps) {
-  CmiAbort("Should never reach here!");
-  return -1;
-}
-
-void LrtsIssueRgets(void *recv, int pe) {
-  CmiAbort("Should never reach here!");
-}
+void LrtsDeregisterMem(const void *ptr, void *info, int pe, unsigned short int mode) {}
 
 #endif /* NETLRTS_MACHINE_ONESIDED_H */