1 #include "simple_API.h" 14 PropertyId p_var_11,
size_t in_degree_var_2,
Edge* var_2_1_inEdges)
16 unsigned localCounter = 0;
18 var_3 = var_2_1_inEdges[i_var_3].
property;
20 var_1 = var_2_1_inEdges[i_var_3].
node;
21 int cond_level_2 = (var_3 == p_var_3);
27 for(i_var_5 = 0; i_var_5 < out_degree_var_1; i_var_5++)
30 var_5 = var_1_3_outEdges[i_var_5].
property;
32 var_4 = var_1_3_outEdges[i_var_5].
node;
33 int cond_level_4 = ((var_5 == p_var_5) & (var_4 == p_var_4));
38 for(i_var_7 = 0; i_var_7 < out_degree_var_1; i_var_7++)
41 var_7 = var_1_5_outEdges[i_var_7].
property;
43 var_6 = var_1_5_outEdges[i_var_7].
node;
44 int cond_level_6 = (var_7 == p_var_7);
49 for(i_var_9 = 0; i_var_9 < out_degree_var_1; i_var_9++)
52 var_9 = var_1_7_outEdges[i_var_9].
property;
54 var_8 = var_1_7_outEdges[i_var_9].
node;
55 int cond_level_8 = (var_9 == p_var_9);
60 for(i_var_11 = 0; i_var_11 < out_degree_var_1; i_var_11++)
63 var_11 = var_1_9_outEdges[i_var_11].
property;
65 var_10 = var_1_9_outEdges[i_var_11].
node;
66 int cond_level_10 = (var_11 == p_var_11);
85 size_t in_degree_var_2,
Edge* var_2_1_inEdges)
88 #pragma omp parallel for 89 for(i_var_3 = 0; i_var_3 < in_degree_var_2; i_var_3++)
91 kernel(i_var_3, graph, var_2, p_var_3, p_var_4, p_var_5, p_var_7, p_var_9, p_var_11, in_degree_var_2,
102 printf(
"In degree %d\n", in_degree_var_2);
104 parallel(graph, var_2, p_var_3, p_var_4, p_var_5, p_var_7, p_var_9, p_var_11, in_degree_var_2, var_2_1_inEdges);
113 #if defined(DATASETInVertexFile) && defined(DATASETOutVertexFile) && defined(DATASETInEdgeFile) && \ 114 defined(DATASETOutEdgeFile) 115 loadGraph(DATASETInVertexFile, DATASETOutVertexFile, DATASETInEdgeFile, DATASETOutEdgeFile);
119 loadGraph(
"dataset/1-InVertexFile.bin",
"dataset/1-OutVertexFile.bin",
"dataset/1-InEdgeFile.bin",
120 "dataset/1-OutEdgeFile.bin");
130 int ret_value = search(&
TheGraph, var_2, p_var_3, p_var_4, p_var_5, p_var_7, p_var_9, p_var_11);
132 printf(
"%d\n", ret_value);
140 return test(8204, 2, 6764, 10, 8, 17, 16) != 10;
static Edge * getInEdges(Graph *graph, NodeId node)
static size_t getInDegree(Graph *graph, NodeId node)
static Edge * getOutEdges(Graph *graph, NodeId node)
void kernel(unsigned vertex, unsigned *p_Qnext, unsigned *Qnext_N, unsigned *map)
General class used to describe a graph in PandA.
static size_t getOutDegree(Graph *graph, NodeId node)
__attribute__((noinline))
int test(NodeId var_2, PropertyId p_var_3, PropertyId p_var_4, PropertyId p_var_5, PropertyId p_var_7, PropertyId p_var_9, PropertyId p_var_11)
void loadGraph(char *InVertexFileName, char *OutVertexFileName, char *InEdgeFileName, char *OutEdgeFileName)
unsigned counter[N_THREADS]