summaryrefslogtreecommitdiff
path: root/BFS/support/common.h
blob: ced324c776d166117a9e3e257116a4b78b1dbd06 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#ifndef _COMMON_H_
#define _COMMON_H_

#define ROUND_UP_TO_MULTIPLE_OF_2(x)    ((((x) + 1)/2)*2)
#define ROUND_UP_TO_MULTIPLE_OF_8(x)    ((((x) + 7)/8)*8)
#define ROUND_UP_TO_MULTIPLE_OF_64(x)   ((((x) + 63)/64)*64)

#define setBit(val, idx) (val) |= (1 << (idx))
#define isSet(val, idx)  ((val) & (1 << (idx)))

struct DPUParams {
    uint32_t dpuNumNodes; /* The number of nodes assigned to this DPU */
    uint32_t numNodes; /* Total number of nodes in the graph  */
    uint32_t dpuStartNodeIdx; /* The index of the first node assigned to this DPU  */
    uint32_t dpuNodePtrsOffset; /* Offset of the node pointers */
    uint32_t level; /* The current BFS level */
    uint32_t dpuNodePtrs_m;
    uint32_t dpuNeighborIdxs_m;
    uint32_t dpuNodeLevel_m;
    uint32_t dpuVisited_m;
    uint32_t dpuCurrentFrontier_m;
    uint32_t dpuNextFrontier_m;
};

#endif