Skip to content

Commit

Permalink
Fixes all instances of dyad_structures.h
Browse files Browse the repository at this point in the history
  • Loading branch information
ilumsden committed Sep 3, 2024
1 parent 1a50fb4 commit d2c8a4c
Show file tree
Hide file tree
Showing 7 changed files with 565 additions and 552 deletions.
217 changes: 114 additions & 103 deletions src/dyad/common/dyad_logging.h
Original file line number Diff line number Diff line change
Expand Up @@ -6,26 +6,26 @@
#error "no config"
#endif

#include <dyad/common/dyad_structures.h>
#include <dyad/common/dyad_structures_int.h>
#include <sys/types.h>
#include <unistd.h>

#ifdef __cplusplus
extern "C" {
#endif

//#define DYAD_NOOP_MACRO do {} while (0)
// #define DYAD_NOOP_MACRO do {} while (0)

//=============================================================================
#ifdef DYAD_LOGGER_NO_LOG
//=============================================================================
#define DYAD_LOGGER_INIT() DYAD_NOOP_MACRO
#define DYAD_LOG_STDERR(...) DYAD_NOOP_MACRO
#define DYAD_LOG_STDOUT(...) DYAD_NOOP_MACRO
#define DYAD_LOG_ERROR(dyad_ctx, ...) DYAD_NOOP_MACRO
#define DYAD_LOG_WARN(dyad_ctx, ...) DYAD_NOOP_MACRO
#define DYAD_LOG_INFO(dyad_ctx, ...) DYAD_NOOP_MACRO
#define DYAD_LOG_DEBUG(dyad_ctx, ...) DYAD_NOOP_MACRO
#define DYAD_LOGGER_INIT() DYAD_NOOP_MACRO
#define DYAD_LOG_STDERR(...) DYAD_NOOP_MACRO
#define DYAD_LOG_STDOUT(...) DYAD_NOOP_MACRO
#define DYAD_LOG_ERROR(dyad_ctx, ...) DYAD_NOOP_MACRO
#define DYAD_LOG_WARN(dyad_ctx, ...) DYAD_NOOP_MACRO
#define DYAD_LOG_INFO(dyad_ctx, ...) DYAD_NOOP_MACRO
#define DYAD_LOG_DEBUG(dyad_ctx, ...) DYAD_NOOP_MACRO
#define DYAD_LOG_STDOUT_REDIRECT(fpath) DYAD_NOOP_MACRO
#define DYAD_LOG_STDERR_REDIRECT(fpath) DYAD_NOOP_MACRO
//=============================================================================
Expand All @@ -35,101 +35,112 @@ extern "C" {
#define DYAD_LOG_STDOUT(...) fprintf(stdout, __VA_ARGS__);

#ifdef DYAD_LOGGER_FLUX // FLUX -----------------------------------------------
#define DYAD_LOGGER_INIT() ;
#define DYAD_LOG_STDOUT_REDIRECT(fpath) freopen ((fpath), "a+", stdout);
#define DYAD_LOG_STDERR_REDIRECT(fpath) freopen ((fpath), "a+", stderr);

#ifdef DYAD_UTIL_LOGGER
#ifdef DYAD_LOGGER_LEVEL_DEBUG
#define DYAD_LOG_DEBUG(dyad_ctx, ...) DYAD_LOG_STDERR(__VA_ARGS__)
#else
#define DYAD_LOG_DEBUG(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_INFO
#define DYAD_LOG_INFO(dyad_ctx, ...) DYAD_LOG_STDOUT(__VA_ARGS__)
#else
#define DYAD_LOG_INFO(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_WARN
#define DYAD_LOG_WARN(dyad_ctx, ...) DYAD_LOG_STDOUT(__VA_ARGS__)
#else
#define DYAD_LOG_WARN(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_ERROR
#define DYAD_LOG_ERROR(dyad_ctx, ...) DYAD_LOG_STDERR(__VA_ARGS__)
#else
#define DYAD_LOG_ERROR(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif
#else // DYAD_UTIL_LOGGER
#include <flux/core.h>
#ifdef DYAD_LOGGER_LEVEL_DEBUG
#define DYAD_LOG_DEBUG(dyad_ctx, ...) flux_log ((flux_t*)(((dyad_ctx_t*) dyad_ctx)->h), LOG_DEBUG, __VA_ARGS__);
#else
#define DYAD_LOG_DEBUG(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_INFO
#define DYAD_LOG_INFO(dyad_ctx, ...) flux_log ((flux_t*)(((dyad_ctx_t*) dyad_ctx)->h), LOG_INFO, __VA_ARGS__);
#else
#define DYAD_LOG_INFO(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_WARN
#define DYAD_LOG_WARN(dyad_ctx, ...) DYAD_NOOP_MACRO
#else
#define DYAD_LOG_WARN(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_ERROR
#define DYAD_LOG_ERROR(dyad_ctx, ...) flux_log_error ((flux_t*)(((dyad_ctx_t*) dyad_ctx)->h), __VA_ARGS__);
#else
#define DYAD_LOG_ERROR(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif
#endif // DYAD_UTIL_LOGGER
#define DYAD_LOGGER_INIT() ;
#define DYAD_LOG_STDOUT_REDIRECT(fpath) freopen((fpath), "a+", stdout);
#define DYAD_LOG_STDERR_REDIRECT(fpath) freopen((fpath), "a+", stderr);

#ifdef DYAD_UTIL_LOGGER
#ifdef DYAD_LOGGER_LEVEL_DEBUG
#define DYAD_LOG_DEBUG(dyad_ctx, ...) DYAD_LOG_STDERR(__VA_ARGS__)
#else
#define DYAD_LOG_DEBUG(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_INFO
#define DYAD_LOG_INFO(dyad_ctx, ...) DYAD_LOG_STDOUT(__VA_ARGS__)
#else
#define DYAD_LOG_INFO(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_WARN
#define DYAD_LOG_WARN(dyad_ctx, ...) DYAD_LOG_STDOUT(__VA_ARGS__)
#else
#define DYAD_LOG_WARN(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_ERROR
#define DYAD_LOG_ERROR(dyad_ctx, ...) DYAD_LOG_STDERR(__VA_ARGS__)
#else
#define DYAD_LOG_ERROR(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif
#else // DYAD_UTIL_LOGGER
#include <flux/core.h>
#ifdef DYAD_LOGGER_LEVEL_DEBUG
#define DYAD_LOG_DEBUG(dyad_ctx, ...) \
flux_log((flux_t *)(((dyad_ctx_t *)dyad_ctx)->h), LOG_DEBUG, __VA_ARGS__);
#else
#define DYAD_LOG_DEBUG(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_INFO
#define DYAD_LOG_INFO(dyad_ctx, ...) \
flux_log((flux_t *)(((dyad_ctx_t *)dyad_ctx)->h), LOG_INFO, __VA_ARGS__);
#else
#define DYAD_LOG_INFO(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_WARN
#define DYAD_LOG_WARN(dyad_ctx, ...) DYAD_NOOP_MACRO
#else
#define DYAD_LOG_WARN(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_ERROR
#define DYAD_LOG_ERROR(dyad_ctx, ...) \
flux_log_error((flux_t *)(((dyad_ctx_t *)dyad_ctx)->h), __VA_ARGS__);
#else
#define DYAD_LOG_ERROR(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif
#endif // DYAD_UTIL_LOGGER
#elif defined(DYAD_LOGGER_CPP_LOGGER) // CPP_LOGGER ---------------------------
#include <cpp-logger/clogger.h>

#define DYAD_LOGGER_NAME "DYAD"

#ifdef DYAD_LOGGER_LEVEL_DEBUG
#define DYAD_LOGGER_INIT() cpp_logger_clog_level(CPP_LOGGER_DEBUG, DYAD_LOGGER_NAME);
#elif defined(DYAD_LOGGER_LEVEL_INFO)
#define DYAD_LOGGER_INIT() cpp_logger_clog_level(CPP_LOGGER_INFO, DYAD_LOGGER_NAME);
#elif defined(DYAD_LOGGER_LEVEL_WARN)
#define DYAD_LOGGER_INIT() cpp_logger_clog_level(CPP_LOGGER_WARN, DYAD_LOGGER_NAME);
#else
#define DYAD_LOGGER_INIT() cpp_logger_clog_level(CPP_LOGGER_ERROR, DYAD_LOGGER_NAME);
#endif

#define DYAD_LOG_STDOUT_REDIRECT(fpath) freopen ((fpath), "a+", stdout);
#define DYAD_LOG_STDERR_REDIRECT(fpath) freopen ((fpath), "a+", stderr);

#ifdef DYAD_LOGGER_LEVEL_DEBUG
#define DYAD_LOG_DEBUG(dyad_ctx, ...) cpp_logger_clog(CPP_LOGGER_DEBUG, DYAD_LOGGER_NAME, __VA_ARGS__);
#else
#define DYAD_LOG_DEBUG(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_INFO
#define DYAD_LOG_INFO(dyad_ctx, ...) cpp_logger_clog(CPP_LOGGER_INFO, DYAD_LOGGER_NAME, __VA_ARGS__);
#else
#define DYAD_LOG_INFO(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_WARN
#define DYAD_LOG_WARN(dyad_ctx, ...) cpp_logger_clog(CPP_LOGGER_WARN, DYAD_LOGGER_NAME, __VA_ARGS__);
#else
#define DYAD_LOG_WARN(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_ERROR
#define DYAD_LOG_ERROR(dyad_ctx, ...) cpp_logger_clog(CPP_LOGGER_ERROR, DYAD_LOGGER_NAME, __VA_ARGS__);
#else
#define DYAD_LOG_ERROR(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif
#include <cpp-logger/clogger.h>

#define DYAD_LOGGER_NAME "DYAD"

#ifdef DYAD_LOGGER_LEVEL_DEBUG
#define DYAD_LOGGER_INIT() \
cpp_logger_clog_level(CPP_LOGGER_DEBUG, DYAD_LOGGER_NAME);
#elif defined(DYAD_LOGGER_LEVEL_INFO)
#define DYAD_LOGGER_INIT() \
cpp_logger_clog_level(CPP_LOGGER_INFO, DYAD_LOGGER_NAME);
#elif defined(DYAD_LOGGER_LEVEL_WARN)
#define DYAD_LOGGER_INIT() \
cpp_logger_clog_level(CPP_LOGGER_WARN, DYAD_LOGGER_NAME);
#else
#define DYAD_LOGGER_INIT() \
cpp_logger_clog_level(CPP_LOGGER_ERROR, DYAD_LOGGER_NAME);
#endif

#define DYAD_LOG_STDOUT_REDIRECT(fpath) freopen((fpath), "a+", stdout);
#define DYAD_LOG_STDERR_REDIRECT(fpath) freopen((fpath), "a+", stderr);

#ifdef DYAD_LOGGER_LEVEL_DEBUG
#define DYAD_LOG_DEBUG(dyad_ctx, ...) \
cpp_logger_clog(CPP_LOGGER_DEBUG, DYAD_LOGGER_NAME, __VA_ARGS__);
#else
#define DYAD_LOG_DEBUG(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_INFO
#define DYAD_LOG_INFO(dyad_ctx, ...) \
cpp_logger_clog(CPP_LOGGER_INFO, DYAD_LOGGER_NAME, __VA_ARGS__);
#else
#define DYAD_LOG_INFO(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_WARN
#define DYAD_LOG_WARN(dyad_ctx, ...) \
cpp_logger_clog(CPP_LOGGER_WARN, DYAD_LOGGER_NAME, __VA_ARGS__);
#else
#define DYAD_LOG_WARN(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif

#ifdef DYAD_LOGGER_LEVEL_ERROR
#define DYAD_LOG_ERROR(dyad_ctx, ...) \
cpp_logger_clog(CPP_LOGGER_ERROR, DYAD_LOGGER_NAME, __VA_ARGS__);
#else
#define DYAD_LOG_ERROR(dyad_ctx, ...) DYAD_NOOP_MACRO
#endif
#endif // DYAD_LOGGER_FLUX ----------------------------------------------------
//=============================================================================
#endif // DYAD_LOGGER_NO_LOG
Expand Down
47 changes: 24 additions & 23 deletions src/dyad/dtl/dyad_dtl_api.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,15 @@
#error "no config"
#endif

// clang-format off
#include <jansson.h>
#include <sys/types.h>
#include <dyad/common/dyad_structures.h>
#include <dyad/common/dyad_structures_int.h>
#include <dyad/common/dyad_dtl.h>
#include <dyad/common/dyad_rc.h>
#include <flux/core.h>
// clang-format on

#ifdef __cplusplus
#include <cstdint>

Expand All @@ -27,36 +30,34 @@ struct dyad_dtl_flux;

// Union type to store the underlying DTL contexts
union dyad_dtl_private {
struct dyad_dtl_ucx* ucx_dtl_handle;
struct dyad_dtl_flux* flux_dtl_handle;
struct dyad_dtl_ucx *ucx_dtl_handle;
struct dyad_dtl_flux *flux_dtl_handle;
} __attribute__((aligned(16)));
typedef union dyad_dtl_private dyad_dtl_private_t;

struct dyad_dtl {
dyad_dtl_private_t private_dtl;
dyad_dtl_mode_t mode;
dyad_rc_t (*rpc_pack) (const dyad_ctx_t* ctx,
const char* upath,
uint32_t producer_rank,
json_t** packed_obj);
dyad_rc_t (*rpc_unpack) (const dyad_ctx_t* ctx, const flux_msg_t* packed_obj, char** upath);
dyad_rc_t (*rpc_respond) (const dyad_ctx_t* ctx, const flux_msg_t* orig_msg);
dyad_rc_t (*rpc_recv_response) (const dyad_ctx_t* ctx, flux_future_t* f);
dyad_rc_t (*get_buffer) (const dyad_ctx_t* ctx, size_t data_size, void** data_buf);
dyad_rc_t (*return_buffer) (const dyad_ctx_t* ctx, void** data_buf);
dyad_rc_t (*establish_connection) (const dyad_ctx_t* ctx);
dyad_rc_t (*send) (const dyad_ctx_t* ctx, void* buf, size_t buflen);
dyad_rc_t (*recv) (const dyad_ctx_t* ctx, void** buf, size_t* buflen);
dyad_rc_t (*close_connection) (const dyad_ctx_t* ctx);
dyad_dtl_private_t private_dtl;
dyad_dtl_mode_t mode;
dyad_rc_t (*rpc_pack)(const dyad_ctx_t *ctx, const char *upath,
uint32_t producer_rank, json_t **packed_obj);
dyad_rc_t (*rpc_unpack)(const dyad_ctx_t *ctx, const flux_msg_t *packed_obj,
char **upath);
dyad_rc_t (*rpc_respond)(const dyad_ctx_t *ctx, const flux_msg_t *orig_msg);
dyad_rc_t (*rpc_recv_response)(const dyad_ctx_t *ctx, flux_future_t *f);
dyad_rc_t (*get_buffer)(const dyad_ctx_t *ctx, size_t data_size,
void **data_buf);
dyad_rc_t (*return_buffer)(const dyad_ctx_t *ctx, void **data_buf);
dyad_rc_t (*establish_connection)(const dyad_ctx_t *ctx);
dyad_rc_t (*send)(const dyad_ctx_t *ctx, void *buf, size_t buflen);
dyad_rc_t (*recv)(const dyad_ctx_t *ctx, void **buf, size_t *buflen);
dyad_rc_t (*close_connection)(const dyad_ctx_t *ctx);
} __attribute__((aligned(256)));
typedef struct dyad_dtl dyad_dtl_t;

dyad_rc_t dyad_dtl_init (dyad_ctx_t* ctx,
dyad_dtl_mode_t mode,
dyad_dtl_comm_mode_t comm_mode,
bool debug);
dyad_rc_t dyad_dtl_init(dyad_ctx_t *ctx, dyad_dtl_mode_t mode,
dyad_dtl_comm_mode_t comm_mode, bool debug);

dyad_rc_t dyad_dtl_finalize (dyad_ctx_t* ctx);
dyad_rc_t dyad_dtl_finalize(dyad_ctx_t *ctx);

#ifdef __cplusplus
}
Expand Down
Loading

0 comments on commit d2c8a4c

Please sign in to comment.