Commit 18b5533b authored by Marc Vef's avatar Marc Vef
Browse files

Adding margo statistics #define, printed after shutting down daemon/lib

parent b8281d64
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -8,13 +8,13 @@
// To enabled logging with info level
#define LOG_INFO
//#define LOG_DEBUG
#define LOG_TRACE
//#define LOG_TRACE
#define LOG_DAEMON_PATH "/tmp/adafs_daemon.log"

// Enable logging for daemon
#define LOG_PRELOAD_INFO
//#define LOG_PRELOAD_DEBUG
#define LOG_PRELOAD_TRACE
//#define LOG_PRELOAD_TRACE
#define LOG_PRELOAD_PATH "/tmp/adafs_preload.log"

// If ACM time should be considered
@@ -43,6 +43,7 @@
#define RPC_TRIES 3
#define RPC_TIMEOUT 150000
#define RPC_PROTOCOL "bmi+tcp"
//#define MARGODIAG // enables diagnostics of margo (printed after shutting down

// Debug configurations
//#define RPC_TEST //unused
+12 −7
Original line number Diff line number Diff line
@@ -32,7 +32,12 @@ void init_environment() {
 * Destroys the margo, argobots, and mercury environments
 */
void destroy_enviroment() {
//    margo_diag_dump(RPC_DATA->server_ipc_mid(), "-", 0);
#ifdef MARGODIAG
    cout << "\n####################\n\nMargo IPC server stats: " << endl;
    margo_diag_dump(RPC_DATA->server_ipc_mid(), "-", 0);
    cout << "\n####################\n\nMargo RPC server stats: " << endl;
    margo_diag_dump(RPC_DATA->server_rpc_mid(), "-", 0);
#endif
    ADAFS_DATA->spdlogger()->info("About to finalize the margo server");
    margo_finalize(RPC_DATA->server_rpc_mid());
    margo_finalize(RPC_DATA->server_ipc_mid());
@@ -55,9 +60,9 @@ bool init_ipc_server() {
        ADAFS_DATA->spdlogger()->error("margo_init failed to initialize the Margo IPC server");
        return false;
    }

//    margo_diag_start(mid);

#ifdef MARGODIAG
    margo_diag_start(mid);
#endif
    // Figure out what address this server is listening on (must be freed when finished)
    auto hret = margo_addr_self(mid, &addr_self);
    if (hret != HG_SUCCESS) {
@@ -98,9 +103,9 @@ bool init_rpc_server() {
        ADAFS_DATA->spdlogger()->error("margo_init failed to initialize the Margo RPC server");
        return false;
    }

//    margo_diag_start(mid);

#ifdef MARGODIAG
    margo_diag_start(mid);
#endif
    // Figure out what address this server is listening on (must be freed when finished)
    auto hret = margo_addr_self(mid, &addr_self);
    if (hret != HG_SUCCESS) {
+9 −3
Original line number Diff line number Diff line
@@ -560,8 +560,9 @@ bool init_margo_client(Margo_mode mode, const string na_plugin) {
        margo_rpc_id_ = mid;

    register_client_rpcs(mid);
//    margo_diag_start(mid);

#ifdef MARGODIAG
    margo_diag_start(mid);
#endif
//    for (int i = 0; i < 10; ++i) {
//        printf("Running %d iteration\n", i);
//        send_minimal_ipc(minimal_id);
@@ -677,7 +678,12 @@ void init_preload() {
 * Called last when preload library is used with the LD_PRELOAD environment variable
 */
void destroy_preload() {
//    margo_diag_dump(margo_ipc_id_, "-", 0);
#ifdef MARGODIAG
    cout << "\n####################\n\nMargo IPC client stats: " << endl;
    margo_diag_dump(margo_ipc_id_, "-", 0);
    cout << "\n####################\n\nMargo RPC client stats: " << endl;
    margo_diag_dump(margo_rpc_id_, "-", 0);
#endif
    ld_logger->info("Freeing Mercury daemon addr ...");
    HG_Addr_free(margo_get_class(margo_ipc_id_), daemon_svr_addr_);
    ld_logger->info("Finalizing Margo IPC client ...");