summaryrefslogtreecommitdiff
path: root/BFS/support/common.h
blob: 5f2aa0deed3a1f1a71c1eedd5d111ae9efa8b9fd (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
#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