Skip to content
Snippets Groups Projects
user avatar
beginner1010 authored
6e55261c
History
Description of the algorithms:

1. Sequential MCE algorithms:

a. TTT (Algorithm.MCE.TTT) : Algorithm due to Tomita et al. for maximal clique Enumeration
b. BronKerboschDegeneracy (Algorithm.MCE.ELS) : ALgorithm due to Eppstein et al. title: "Listing All Maximal Cliques in Sparse Graphs in Near-optimal Time"

2. Parallel:

a. ParTTT (Algorithm.parMCE.ParTTT): Theoretically work-efficient parallel MCE algorithm

b. ParMCE: Practical efficient parallel algorithm for MCE.

	b1. ParMCEDegree (Algorithm.parMCE.ParMCEDegree): Degree based vertex ranking.
	b2. ParMCEDegeneracy (Algorithm.parMCE.ParMCEDegeneracy): Degeneracy score based vertex ranking.
	b3. ParMCETriangle (Algorithm.parMCE.ParMCETriangles): Triangle count (for each vertex) based vertex ranking.

c. PECO: Distributed algorithm for MCE. Paper: Mining maximal cliques from a large graph using mapreduce: Tackling highly uneven subproblem sizes. by Svendsen et al.

	However, in executing PECO in our shared memory setting, a new thread is created for each subproblem and they run in parallel.

	c1. PECODegree (Algorithm.parMCE.PECODegree): Degree based vertex ranking.
	c2. PECODegeneracy (Algorithm.parMCE.PECODegeneracy): Degeneracy based vertex ranking.
	c3. PECOTriangle (Algorithm.parMCE.PECOTriangle): Triangle count based vertex ranking.

d. pecoShared: Modificationof PECO where we do not explicitly create subgraph for each subproblem.

	pecoSharedDegree, pecoSharedDegeneracy, pecoSharedTriangle.

e. perVertexTTT : For generating the time taken by each subproblem when using TTT (degree based vertex ranking used).
f. perVertexParTTT_Total : For generating the time taken by each subproblem when using ParTTT (degree based vertex ranking used). 


Executing jar:

For all codes inside Algorithm.parMCE package:

java -Xmx100g -XX:+UseParallelGC -cp v1-0.0.1-SNAPSHOT.jar <module-to-run> <input-graph> <number of threads>

For example:

For executing ParMCEDegree on orkut_edges with 8 threads:

java -Xmx100g -XX:+UseParallelGC -cp v1-0.0.1-SNAPSHOT.jar Algorithm.parMCE.ParMCEDegree orkut_edges 8