- Peeling: the state-of-the-art sequential D-core decomposition algorithm;
- AC: the distributed anchored coreness-based D-core decomposition algorithm, and we parallelize it by using multi-threads;
- SC: the state-of-the-art distributed skyline coreness-based D-core decomposition algorithm, and we parallelize it by using multi-threads;
- ParPeel: our proposed parallel D-core decomposition algorithm, which is depicted in Algorithm 3;
- ParPeel+: our proposed parallel D-core decomposition algorithm in Algorithm 3 with shell-based pruning strategy in Section 5.1;
- Shell-PDC: our proposed parallel D-core decomposition algorithm, listed in Algorithm 5.
g++ -std=c++17 -fopenmp ${fileDirname}/*.cpp -o ${FILE_NAME}
For example:
g++ -std=c++17 -fopenmp ./src/*.cpp -o dcore
./${FILE_NAME} -t ${THREAD} -f ${GRAPH_FILE} -a ${ALGORITHM}
For example:
./dcore \
-t 64 \
-f ./materials/em.txt \
-a 6
For simply, we can run the program via a script ./run.py
.
-
THREAD: The number of threads.
-
GRAPH_FILE: The first line is consited of # of nodes and # of directed edges in the graph, which is denoted as following.
${NODES} ${EDGE}
Remains line represents a directed edge from node u to node v, which is presented as following.
${u} ${v}
- ALGORITHM: The id of algorithm will be running, which the id is presented as following.
id | algorithms |
---|---|
1 | Peeling |
2 | AC |
3 | SC |
4 | ParPeel |
5 | ParPeel+ |
6 | Shell-PDC |
- The ten datasets used in paper are availabe from:
Name | Abbr. | Source |
---|---|---|
Email-EuAll | EM | https://snap.stanford.edu/data/index.htm |
Slashdot | SD | |
Amazon | AM | |
Pokec | PO | |
Live Journal | LJ | |
Enwiki-2013 | EW | https://law.di.unimi.it/index.php |
Hollywood | HW | |
Webbase | WB | |
IT-2004 | IT | |
UK-2007 | UK |
- We give an example of Email-EuAll in
./materials/
, and running time of all algorithms in./result/EM/
.