I'm currently researching about MPI Peruse events and MPI UCX communcation monitoring / logging and so I found your paper and tried to build this ucTrace tool.
Badly, I got some compiler errors while building this project.
$ make all
rm -f *.so
rm -f go/completion-tracking/*.h
rm -f sanitizer/libmalloctracker.so
rm -f libmalloctracker.so
rm -f snoop_mpi.so
cd go/completion-tracking && \
rm -f *.h && \
python3 generate_funcs.py
cd ucp_tracker && \
gcc -shared -fPIC -o libsnoop_ucp.so ucp_tracker.c && \
cp *.so ../
g++ -O3 -fPIC -shared -o libsnoop_go.so ./cpp-rewrite/*.cpp -I./cpp-rewrite -lz -I<HOME_PATH>/git/json/include
./cpp-rewrite/structs.cpp: In function ‘snoop_uct_iface_t* snoop_uct_iface_create(uintptr_t, uintptr_t, const char*, const char*, size_t, snoop_uct_iface_tl_resources_t*, size_t, snoop_uct_addr_t*, timespec, timespec)’:
./cpp-rewrite/structs.cpp:75:14: warning: ‘void* memcpy(void*, const void*, size_t)’ reading 24 bytes from a region of size 8 [-Wstringop-overread]
75 | std::memcpy(&iface->tl_device_resources, &tl_device_resources,
| ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
76 | sizeof(snoop_uct_iface_tl_resources_t));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./cpp-rewrite/structs.cpp:65:37: note: source object ‘tl_device_resources’ of size 8
65 | snoop_uct_iface_tl_resources_t *tl_device_resources, size_t md_rkey_size,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
gcc -shared -fPIC -O3 -o preload.so preload/preload.c \
-I<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src -I<HOME_PATH>/git/build/include -L<HOME_PATH>/git/ucTrace -lsnoop_go
In file included from preload/preload.c:30:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_put_short’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2866:5: error: implicit declaration of function ‘SNOOP_STATUS’; did you mean ‘SNOOP_SETUP’? [-Wimplicit-function-declaration]
2866 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_put_short(ep, buffer, length, remote_addr, rkey);
| ^~~~~~~~~~~~
| SNOOP_SETUP
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2866:18: error: expected expression before ‘ucs_status_t’
2866 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_put_short(ep, buffer, length, remote_addr, rkey);
| ^~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2867:117: error: macro "snoop_uct_send_f_addr" requires 9 arguments, but only 7 given
2867 | op_uct_send_f_addr(ep, length, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr, buffer, 0);
| ^
In file included from preload/preload.c:21:
preload/../snoop_ucx.h:341:9: note: macro "snoop_uct_send_f_addr" defined here
341 | #define snoop_uct_send_f_addr(ep, size, rkey, is_success, remote_addr, iov, \
| ^~~~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2867:5: error: ‘snoop_uct_send_f_addr’ undeclared (first use in this function); did you mean ‘snoop_uct_ep_addr’?
2867 | snoop_uct_send_f_addr(ep, length, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr, buffer, 0);
| ^~~~~~~~~~~~~~~~~~~~~
| snoop_uct_ep_addr
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2867:5: note: each undeclared identifier is reported only once for each function it appears in
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2868:12: error: ‘_status’ undeclared (first use in this function)
2868 | return _status;
| ^~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_put_bcopy’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2882:116: error: macro "snoop_uct_send_f_addr" requires 9 arguments, but only 7 given
2882 | oop_uct_send_f_addr(ep, send_size, rkey, (send_size > 0 && send_size != ((ssize_t) -1)), remote_addr, NULL, 0);
| ^
preload/../snoop_ucx.h:341:9: note: macro "snoop_uct_send_f_addr" defined here
341 | #define snoop_uct_send_f_addr(ep, size, rkey, is_success, remote_addr, iov, \
| ^~~~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2882:5: error: ‘snoop_uct_send_f_addr’ undeclared (first use in this function); did you mean ‘snoop_uct_ep_addr’?
2882 | snoop_uct_send_f_addr(ep, send_size, rkey, (send_size > 0 && send_size != ((ssize_t) -1)), remote_addr, NULL, 0);
| ^~~~~~~~~~~~~~~~~~~~~
| snoop_uct_ep_addr
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_put_zcopy’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2921:18: error: expected expression before ‘ucs_status_t’
2921 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_put_zcopy(ep, iov, iovcnt, remote_addr, rkey, comp);
| ^~~~~~~~~~~~
preload/../snoop_ucx.h:77:27: error: ‘completion_id’ undeclared (first use in this function); did you mean ‘uct_completion_t’?
77 | completion_id, start_time); \
| ^~~~~~~~~~~~~
preload/../snoop_ucx.h:348:26: note: in definition of macro ‘snoop_uct_send_f_addr’
348 | completion_id, start_time, __func__); \
| ^~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2922:5: note: in expansion of macro ‘SNOOP_LOG_ZCOPY_ADD
’
2922 | SNOOP_LOG_ZCOPY_ADDR(rkey,(_status == UCS_OK || _status == UCS_INPROGRESS),remote_addr);
| ^~~~~~~~~~~~~~~~~~~~
preload/../snoop_ucx.h:77:42: error: ‘start_time’ undeclared (first use in this function); did you mean ‘strptime’?
77 | completion_id, start_time); \
| ^~~~~~~~~~
preload/../snoop_ucx.h:348:41: note: in definition of macro ‘snoop_uct_send_f_addr’
348 | completion_id, start_time, __func__); \
| ^~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2922:5: note: in expansion of macro ‘SNOOP_LOG_ZCOPY_ADD
’
2922 | SNOOP_LOG_ZCOPY_ADDR(rkey,(_status == UCS_OK || _status == UCS_INPROGRESS),remote_addr);
| ^~~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2923:12: error: ‘_status’ undeclared (first use in this function)
2923 | return _status;
| ^~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_get_short’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2934:18: error: expected expression before ‘ucs_status_t’
2934 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_get_short(ep, buffer, length, remote_addr, rkey);
| ^~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2935:117: error: macro "snoop_uct_send_f_addr" requires 9 arguments, but only 7 given
2935 | op_uct_send_f_addr(ep, length, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr, buffer, 0);
| ^
preload/../snoop_ucx.h:341:9: note: macro "snoop_uct_send_f_addr" defined here
341 | #define snoop_uct_send_f_addr(ep, size, rkey, is_success, remote_addr, iov, \
| ^~~~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2935:5: error: ‘snoop_uct_send_f_addr’ undeclared (first use in this function); did you mean ‘snoop_uct_ep_addr’?
2935 | snoop_uct_send_f_addr(ep, length, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr, buffer, 0);
| ^~~~~~~~~~~~~~~~~~~~~
| snoop_uct_ep_addr
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2936:12: error: ‘_status’ undeclared (first use in this function)
2936 | return _status;
| ^~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_get_bcopy’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2949:18: error: expected expression before ‘ucs_status_t’
2949 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_get_bcopy(ep, unpack_cb, arg, length, remote_addr,
| ^~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2951:115: error: macro "snoop_uct_send_f_addr" requires 9 arguments, but only 7 given
2951 | noop_uct_send_f_addr(ep, length, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr, NULL, 0);
| ^
preload/../snoop_ucx.h:341:9: note: macro "snoop_uct_send_f_addr" defined here
341 | #define snoop_uct_send_f_addr(ep, size, rkey, is_success, remote_addr, iov, \
| ^~~~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2951:5: error: ‘snoop_uct_send_f_addr’ undeclared (first use in this function); did you mean ‘snoop_uct_ep_addr’?
2951 | snoop_uct_send_f_addr(ep, length, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr, NULL, 0);
| ^~~~~~~~~~~~~~~~~~~~~
| snoop_uct_ep_addr
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2952:12: error: ‘_status’ undeclared (first use in this function)
2952 | return _status;
| ^~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_get_zcopy’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2990:18: error: expected expression before ‘ucs_status_t’
2990 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_get_zcopy(ep, iov, iovcnt, remote_addr, rkey, comp);
| ^~~~~~~~~~~~
preload/../snoop_ucx.h:77:27: error: ‘completion_id’ undeclared (first use in this function); did you mean ‘uct_completion_t’?
77 | completion_id, start_time); \
| ^~~~~~~~~~~~~
preload/../snoop_ucx.h:348:26: note: in definition of macro ‘snoop_uct_send_f_addr’
348 | completion_id, start_time, __func__); \
| ^~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2991:5: note: in expansion of macro ‘SNOOP_LOG_ZCOPY_ADD
’
2991 | SNOOP_LOG_ZCOPY_ADDR(rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr);
| ^~~~~~~~~~~~~~~~~~~~
preload/../snoop_ucx.h:77:42: error: ‘start_time’ undeclared (first use in this function); did you mean ‘strptime’?
77 | completion_id, start_time); \
| ^~~~~~~~~~
preload/../snoop_ucx.h:348:41: note: in definition of macro ‘snoop_uct_send_f_addr’
348 | completion_id, start_time, __func__); \
| ^~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2991:5: note: in expansion of macro ‘SNOOP_LOG_ZCOPY_ADD
’
2991 | SNOOP_LOG_ZCOPY_ADDR(rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr);
| ^~~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:2992:12: error: ‘_status’ undeclared (first use in this function)
2992 | return _status;
| ^~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_am_short’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3003:18: error: expected expression before ‘ucs_status_t’
3003 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_am_short(ep, id, header, payload, length);
| ^~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3004:104: error: macro "snoop_uct_send_f_am" requires 9 arguments, but only 7 given
3004 | snoop_uct_send_f_am(ep, length, 0, (_status == UCS_OK || _status == UCS_INPROGRESS), id, payload, 0);
| ^
preload/../snoop_ucx.h:351:9: note: macro "snoop_uct_send_f_am" defined here
351 | #define snoop_uct_send_f_am(ep, size, rkey, is_success, id, iov, iovcnt, \
| ^~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3004:5: error: ‘snoop_uct_send_f_am’ undeclared (first use in this function); did you mean ‘snoop_ucp_send_cb’?
3004 | snoop_uct_send_f_am(ep, length, 0, (_status == UCS_OK || _status == UCS_INPROGRESS), id, payload, 0);
| ^~~~~~~~~~~~~~~~~~~
| snoop_ucp_send_cb
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3005:12: error: ‘_status’ undeclared (first use in this function)
3005 | return _status;
| ^~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_am_short_iov’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3042:18: error: expected expression before ‘ucs_status_t’
3042 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_am_short_iov(ep, id, iov, iovcnt);
| ^~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3043:28: error: ‘_status’ undeclared (first use in this function)
3043 | SNOOP_LOG_ZCOPY_AM(0, (_status == UCS_OK || _status == UCS_INPROGRESS), 0x0);
| ^~~~~~~
preload/../snoop_ucx.h:357:42: note: in definition of macro ‘snoop_uct_send_f_am’
357 | snoop_uct_send_proxy(ep, size, rkey, is_success, extra, iov, iovcnt, \
| ^~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3043:5: note: in expansion of macro ‘SNOOP_LOG_ZCOPY_AM’
3043 | SNOOP_LOG_ZCOPY_AM(0, (_status == UCS_OK || _status == UCS_INPROGRESS), 0x0);
| ^~~~~~~~~~~~~~~~~~
preload/../snoop_ucx.h:88:25: error: ‘completion_id’ undeclared (first use in this function); did you mean ‘uct_completion_t’?
88 | completion_id, start_time); \
| ^~~~~~~~~~~~~
preload/../snoop_ucx.h:358:26: note: in definition of macro ‘snoop_uct_send_f_am’
358 | completion_id, start_time, __func__); \
| ^~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3043:5: note: in expansion of macro ‘SNOOP_LOG_ZCOPY_AM’
3043 | SNOOP_LOG_ZCOPY_AM(0, (_status == UCS_OK || _status == UCS_INPROGRESS), 0x0);
| ^~~~~~~~~~~~~~~~~~
preload/../snoop_ucx.h:88:40: error: ‘start_time’ undeclared (first use in this function); did you mean ‘strptime’?
88 | completion_id, start_time); \
| ^~~~~~~~~~
preload/../snoop_ucx.h:358:41: note: in definition of macro ‘snoop_uct_send_f_am’
358 | completion_id, start_time, __func__); \
| ^~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3043:5: note: in expansion of macro ‘SNOOP_LOG_ZCOPY_AM’
3043 | SNOOP_LOG_ZCOPY_AM(0, (_status == UCS_OK || _status == UCS_INPROGRESS), 0x0);
| ^~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_am_bcopy’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3059:68: error: macro "snoop_uct_send_f_am" requires 9 arguments, but only 7 given
3059 | (send_size > 0 && send_size != ((ssize_t) -1)), id, NULL, 0);
| ^
preload/../snoop_ucx.h:351:9: note: macro "snoop_uct_send_f_am" defined here
351 | #define snoop_uct_send_f_am(ep, size, rkey, is_success, id, iov, iovcnt, \
| ^~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3058:5: error: ‘snoop_uct_send_f_am’ undeclared (first use in this function); did you mean ‘snoop_ucp_send_cb’?
3058 | snoop_uct_send_f_am(ep, send_size, 0,
| ^~~~~~~~~~~~~~~~~~~
| snoop_ucp_send_cb
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_am_zcopy’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3108:18: error: expected expression before ‘ucs_status_t’
3108 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_am_zcopy(ep, id, header, header_length, iov, iovcnt,
| ^~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3110:28: error: ‘_status’ undeclared (first use in this function)
3110 | SNOOP_LOG_ZCOPY_AM(0, (_status == UCS_OK || _status == UCS_INPROGRESS), id);
| ^~~~~~~
preload/../snoop_ucx.h:357:42: note: in definition of macro ‘snoop_uct_send_f_am’
357 | snoop_uct_send_proxy(ep, size, rkey, is_success, extra, iov, iovcnt, \
| ^~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3110:5: note: in expansion of macro ‘SNOOP_LOG_ZCOPY_AM’
3110 | SNOOP_LOG_ZCOPY_AM(0, (_status == UCS_OK || _status == UCS_INPROGRESS), id);
| ^~~~~~~~~~~~~~~~~~
preload/../snoop_ucx.h:88:25: error: ‘completion_id’ undeclared (first use in this function); did you mean ‘uct_completion_t’?
88 | completion_id, start_time); \
| ^~~~~~~~~~~~~
preload/../snoop_ucx.h:358:26: note: in definition of macro ‘snoop_uct_send_f_am’
358 | completion_id, start_time, __func__); \
| ^~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3110:5: note: in expansion of macro ‘SNOOP_LOG_ZCOPY_AM’
3110 | SNOOP_LOG_ZCOPY_AM(0, (_status == UCS_OK || _status == UCS_INPROGRESS), id);
| ^~~~~~~~~~~~~~~~~~
preload/../snoop_ucx.h:88:40: error: ‘start_time’ undeclared (first use in this function); did you mean ‘strptime’?
88 | completion_id, start_time); \
| ^~~~~~~~~~
preload/../snoop_ucx.h:358:41: note: in definition of macro ‘snoop_uct_send_f_am’
358 | completion_id, start_time, __func__); \
| ^~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3110:5: note: in expansion of macro ‘SNOOP_LOG_ZCOPY_AM’
3110 | SNOOP_LOG_ZCOPY_AM(0, (_status == UCS_OK || _status == UCS_INPROGRESS), id);
| ^~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_atomic_cswap64’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3122:18: error: expected expression before ‘ucs_status_t’
3122 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_atomic_cswap64(ep, compare, swap, remote_addr, rkey, result, comp);
| ^~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3123:110: error: macro "snoop_uct_send_f_addr" requires 9 arguments, but only 7 given
3123 | snoop_uct_send_f_addr(ep, 64, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr,NULL, 0);
| ^
preload/../snoop_ucx.h:341:9: note: macro "snoop_uct_send_f_addr" defined here
341 | #define snoop_uct_send_f_addr(ep, size, rkey, is_success, remote_addr, iov, \
| ^~~~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3123:5: error: ‘snoop_uct_send_f_addr’ undeclared (first use in this function); did you mean ‘snoop_uct_ep_addr’?
3123 | snoop_uct_send_f_addr(ep, 64, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr,NULL, 0);
| ^~~~~~~~~~~~~~~~~~~~~
| snoop_uct_ep_addr
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3124:12: error: ‘_status’ undeclared (first use in this function)
3124 | return _status;
| ^~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_atomic_cswap32’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3136:18: error: expected expression before ‘ucs_status_t’
3136 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_atomic_cswap32(ep, compare, swap, remote_addr, rkey, result, comp);
| ^~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3137:111: error: macro "snoop_uct_send_f_addr" requires 9 arguments, but only 7 given
3137 | snoop_uct_send_f_addr(ep, 32, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr, NULL, 0);
| ^
preload/../snoop_ucx.h:341:9: note: macro "snoop_uct_send_f_addr" defined here
341 | #define snoop_uct_send_f_addr(ep, size, rkey, is_success, remote_addr, iov, \
| ^~~~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3137:5: error: ‘snoop_uct_send_f_addr’ undeclared (first use in this function); did you mean ‘snoop_uct_ep_addr’?
3137 | snoop_uct_send_f_addr(ep, 32, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr, NULL, 0);
| ^~~~~~~~~~~~~~~~~~~~~
| snoop_uct_ep_addr
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3138:12: error: ‘_status’ undeclared (first use in this function)
3138 | return _status;
| ^~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_atomic32_post’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3150:18: error: expected expression before ‘ucs_status_t’
3150 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_atomic32_post(ep, opcode, value, remote_addr, rkey);
| ^~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3151:110: error: macro "snoop_uct_send_f_addr" requires 9 arguments, but only 7 given
3151 | snoop_uct_send_f_addr(ep, 32, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr,NULL, 0);
| ^
preload/../snoop_ucx.h:341:9: note: macro "snoop_uct_send_f_addr" defined here
341 | #define snoop_uct_send_f_addr(ep, size, rkey, is_success, remote_addr, iov, \
| ^~~~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3151:5: error: ‘snoop_uct_send_f_addr’ undeclared (first use in this function); did you mean ‘snoop_uct_ep_addr’?
3151 | snoop_uct_send_f_addr(ep, 32, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr,NULL, 0);
| ^~~~~~~~~~~~~~~~~~~~~
| snoop_uct_ep_addr
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3152:12: error: ‘_status’ undeclared (first use in this function)
3152 | return _status;
| ^~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_atomic64_post’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3164:18: error: expected expression before ‘ucs_status_t’
3164 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_atomic64_post(ep, opcode, value, remote_addr, rkey);
| ^~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3165:110: error: macro "snoop_uct_send_f_addr" requires 9 arguments, but only 7 given
3165 | snoop_uct_send_f_addr(ep, 64, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr,NULL, 0);
| ^
preload/../snoop_ucx.h:341:9: note: macro "snoop_uct_send_f_addr" defined here
341 | #define snoop_uct_send_f_addr(ep, size, rkey, is_success, remote_addr, iov, \
| ^~~~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3165:5: error: ‘snoop_uct_send_f_addr’ undeclared (first use in this function); did you mean ‘snoop_uct_ep_addr’?
3165 | snoop_uct_send_f_addr(ep, 64, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr,NULL, 0);
| ^~~~~~~~~~~~~~~~~~~~~
| snoop_uct_ep_addr
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3166:12: error: ‘_status’ undeclared (first use in this function)
3166 | return _status;
| ^~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_atomic32_fetch’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3179:18: error: expected expression before ‘ucs_status_t’
3179 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_atomic32_fetch(ep, opcode, value, result,
| ^~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3181:110: error: macro "snoop_uct_send_f_addr" requires 9 arguments, but only 7 given
3181 | snoop_uct_send_f_addr(ep, 32, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr,NULL, 0);
| ^
preload/../snoop_ucx.h:341:9: note: macro "snoop_uct_send_f_addr" defined here
341 | #define snoop_uct_send_f_addr(ep, size, rkey, is_success, remote_addr, iov, \
| ^~~~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3181:5: error: ‘snoop_uct_send_f_addr’ undeclared (first use in this function); did you mean ‘snoop_uct_ep_addr’?
3181 | snoop_uct_send_f_addr(ep, 32, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr,NULL, 0);
| ^~~~~~~~~~~~~~~~~~~~~
| snoop_uct_ep_addr
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3182:12: error: ‘_status’ undeclared (first use in this function)
3182 | return _status;
| ^~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_atomic64_fetch’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3195:18: error: expected expression before ‘ucs_status_t’
3195 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_atomic64_fetch(ep, opcode, value, result,
| ^~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3197:111: error: macro "snoop_uct_send_f_addr" requires 9 arguments, but only 7 given
3197 | snoop_uct_send_f_addr(ep, 64, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr, NULL, 0);
| ^
preload/../snoop_ucx.h:341:9: note: macro "snoop_uct_send_f_addr" defined here
341 | #define snoop_uct_send_f_addr(ep, size, rkey, is_success, remote_addr, iov, \
| ^~~~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3197:5: error: ‘snoop_uct_send_f_addr’ undeclared (first use in this function); did you mean ‘snoop_uct_ep_addr’?
3197 | snoop_uct_send_f_addr(ep, 64, rkey, (_status == UCS_OK || _status == UCS_INPROGRESS), remote_addr, NULL, 0);
| ^~~~~~~~~~~~~~~~~~~~~
| snoop_uct_ep_addr
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3198:12: error: ‘_status’ undeclared (first use in this function)
3198 | return _status;
| ^~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_tag_eager_short’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3327:18: error: expected expression before ‘ucs_status_t’
3327 | SNOOP_STATUS(ucs_status_t, _status, UCS_ERR_LAST) = ep->iface->ops.ep_tag_eager_short(ep, tag, data, length);
| ^~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3328:99: error: macro "snoop_uct_send_f_none" requires 8 arguments, but only 6 given
3328 | snoop_uct_send_f_none(ep, length, 0, (_status == UCS_OK || _status == UCS_INPROGRESS), data, 0);
| ^
preload/../snoop_ucx.h:332:9: note: macro "snoop_uct_send_f_none" defined here
332 | #define snoop_uct_send_f_none(ep, size, rkey, is_success, iov, iovcnt, \
| ^~~~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3328:5: error: ‘snoop_uct_send_f_none’ undeclared (first use in this function); did you mean ‘snoop_uct_send_proxy’?
3328 | snoop_uct_send_f_none(ep, length, 0, (_status == UCS_OK || _status == UCS_INPROGRESS), data, 0);
| ^~~~~~~~~~~~~~~~~~~~~
| snoop_uct_send_proxy
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3329:12: error: ‘_status’ undeclared (first use in this function)
3329 | return _status;
| ^~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_tag_eager_bcopy’:
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3363:99: error: macro "snoop_uct_send_f_none" requires 8 arguments, but only 6 given
3363 | snoop_uct_send_f_none(ep, send_size, 0, (send_size > 0 && send_size != ((ssize_t) -1)),NULL, 0);
| ^
preload/../snoop_ucx.h:332:9: note: macro "snoop_uct_send_f_none" defined here
332 | #define snoop_uct_send_f_none(ep, size, rkey, is_success, iov, iovcnt, \
| ^~~~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3363:5: error: ‘snoop_uct_send_f_none’ undeclared (first use in this function); did you mean ‘snoop_uct_send_proxy’?
3363 | snoop_uct_send_f_none(ep, send_size, 0, (send_size > 0 && send_size != ((ssize_t) -1)),NULL, 0);
| ^~~~~~~~~~~~~~~~~~~~~
| snoop_uct_send_proxy
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_tag_eager_zcopy’:
preload/../snoop_ucx.h:99:27: error: ‘completion_id’ undeclared (first use in this function); did you mean ‘uct_completion_t’?
99 | completion_id, start_time); \
| ^~~~~~~~~~~~~
preload/../snoop_ucx.h:338:26: note: in definition of macro ‘snoop_uct_send_f_none’
338 | completion_id, start_time, __func__); \
| ^~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3412:5: note: in expansion of macro ‘SNOOP_LOG_ZCOPY_NON
’
3412 | SNOOP_LOG_ZCOPY_NONE(0, 2);
| ^~~~~~~~~~~~~~~~~~~~
preload/../snoop_ucx.h:99:42: error: ‘start_time’ undeclared (first use in this function); did you mean ‘strptime’?
99 | completion_id, start_time); \
| ^~~~~~~~~~
preload/../snoop_ucx.h:338:41: note: in definition of macro ‘snoop_uct_send_f_none’
338 | completion_id, start_time, __func__); \
| ^~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3412:5: note: in expansion of macro ‘SNOOP_LOG_ZCOPY_NON
’
3412 | SNOOP_LOG_ZCOPY_NONE(0, 2);
| ^~~~~~~~~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h: In function ‘uct_ep_tag_rndv_zcopy’:
preload/../snoop_ucx.h:99:27: error: ‘completion_id’ undeclared (first use in this function); did you mean ‘uct_completion_t’?
99 | completion_id, start_time); \
| ^~~~~~~~~~~~~
preload/../snoop_ucx.h:338:26: note: in definition of macro ‘snoop_uct_send_f_none’
338 | completion_id, start_time, __func__); \
| ^~~~~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3462:5: note: in expansion of macro ‘SNOOP_LOG_ZCOPY_NON
’
3462 | SNOOP_LOG_ZCOPY_NONE(0, 2);
| ^~~~~~~~~~~~~~~~~~~~
preload/../snoop_ucx.h:99:42: error: ‘start_time’ undeclared (first use in this function); did you mean ‘strptime’?
99 | completion_id, start_time); \
| ^~~~~~~~~~
preload/../snoop_ucx.h:338:41: note: in definition of macro ‘snoop_uct_send_f_none’
338 | completion_id, start_time, __func__); \
| ^~~~~~~~~~
<HOME_PATH>/git/snoopie-ucx-tracking-ucx//src/uct/api/uct.h:3462:5: note: in expansion of macro ‘SNOOP_LOG_ZCOPY_NON
’
3462 | SNOOP_LOG_ZCOPY_NONE(0, 2);
| ^~~~~~~~~~~~~~~~~~~~
make: *** [Makefile:167: preload] Error 1
Hi together,
I'm currently researching about MPI Peruse events and MPI UCX communcation monitoring / logging and so I found your paper and tried to build this ucTrace tool.
Badly, I got some compiler errors while building this project.
Log:
Can anyone please help me with this error?
Thank you in advance!