ssg-internal.h 833 Bytes
Newer Older
1
2
3
4
5
/*
 * Copyright (c) 2016 UChicago Argonne, LLC
 *
 * See COPYRIGHT in top-level directory.
 */
Jonathan Jenkins's avatar
Jonathan Jenkins committed
6
#pragma once
Jonathan Jenkins's avatar
Jonathan Jenkins committed
7
#include <margo.h>
8
#include <ssg.h>
9

10
11
#if USE_SWIM_FD
#include "swim-fd/swim-fd.h"
12
#endif
Jonathan Jenkins's avatar
Jonathan Jenkins committed
13

14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
typedef struct ssg_view ssg_view_t;
typedef struct ssg_member_state ssg_member_state_t;

struct ssg_view
{
    int self_rank;
    int group_size;
    ssg_member_state_t *member_states;
};

struct ssg_member_state
{
    ssg_member_status_t status;
    hg_addr_t addr;
    char *addr_str;
};

Jonathan Jenkins's avatar
Jonathan Jenkins committed
31
32
struct ssg
{
33
    margo_instance_id mid;
34
35
36
37
38
39
40
    ssg_view_t view;
    void *addr_str_buf;
    int addr_str_buf_size;
#if USE_SWIM_FD
    swim_context_t *swim_ctx;
#endif
#if 0
Jonathan Jenkins's avatar
Jonathan Jenkins committed
41
42
43
44
45
46
    hg_id_t barrier_rpc_id;
    int barrier_id;
    int barrier_count;
    ABT_mutex barrier_mutex;
    ABT_cond  barrier_cond;
    ABT_eventual barrier_eventual;
47
#endif
Jonathan Jenkins's avatar
Jonathan Jenkins committed
48
};