ssg-internal.h 604 Bytes
Newer Older
1 2 3 4 5 6
/*
 * Copyright (c) 2016 UChicago Argonne, LLC
 *
 * See COPYRIGHT in top-level directory.
 */

Jonathan Jenkins's avatar
Jonathan Jenkins committed
7 8
#pragma once

Jonathan Jenkins's avatar
Jonathan Jenkins committed
9 10 11
#include <mercury_types.h>
#include <abt.h>
#include <margo.h>
12

13 14
#if USE_SWIM_FD
#include "swim-fd/swim-fd.h"
15
#endif
Jonathan Jenkins's avatar
Jonathan Jenkins committed
16

Jonathan Jenkins's avatar
Jonathan Jenkins committed
17 18
struct ssg
{
19 20 21
    margo_instance_id mid;
    int rank;
    int num_addrs;
Jonathan Jenkins's avatar
Jonathan Jenkins committed
22
    char **addr_strs;
Jonathan Jenkins's avatar
Jonathan Jenkins committed
23
    hg_addr_t *addrs;
Jonathan Jenkins's avatar
Jonathan Jenkins committed
24 25
    void *backing_buf;
    int buf_size;
Jonathan Jenkins's avatar
Jonathan Jenkins committed
26 27 28 29 30 31
    hg_id_t barrier_rpc_id;
    int barrier_id;
    int barrier_count;
    ABT_mutex barrier_mutex;
    ABT_cond  barrier_cond;
    ABT_eventual barrier_eventual;
32
#if USE_SWIM_FD
33 34
    swim_context_t *swim_ctx;
#endif
Jonathan Jenkins's avatar
Jonathan Jenkins committed
35
};