Skip to content

drons/GraphHPC-2017

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

******************************
GraphHPC-2017 contest      
******************************

===============================================================================

Authors
-------
Artem Mazeev
Alexander Semenov
Timur Ismagilov
 

RMAT graph generator is adapted from snap-0.4 http://snap-graph.sourceforge.net

Description of executables:
---------------------------
gen_random              -- random (Erdos-Renyi) graph serial generator
gen_RMAT                -- RMAT graph serial generator
reference               -- reference serial implementation
reference_bfs           -- reference with bfs serial implementation
reference_mpi           -- mpi reference distributed implementation
solution                -- there should be your solution
solution_mpi            -- there should be your distributed solution
validation              -- validation tool
gen_valid_info          -- to get right answer

===============================================================================

To implement your own algorithm, write code in solution.cpp, and in solution_mpi.cpp for distributed version

To build implementations, type 'make'

Brief instructions:
-------------------
Examples of testing your implementation by hands:

**********************************************

Serial version:

0. Print 'make' in your console:

    $ make

1. Run graph generator:

    $ ./gen_RMAT -s 5
	
	or
	
	$ ./gen_random -s 10

2. Run your implementation:

    $ ./solution -in rmat-5
	
	or
	
	$ ./solution -in random-10

3. Get right answer:

    $ ./gen_valid_info -in rmat-5
    
    or
    
    $ ./gen_valid_info -in random-10

4. Run validation tool:

    $ ./validation -ans rmat-5.ans -res rmat-5.res
	
	or
	
	$ ./validation -ans random-10.ans -res random-10.res

**********************************************

Distributed version:

0. Print 'make' in your console:

	$ make

1. Run graph generator:

	$ ./gen_RMAT -s 12
	
2. Run your implementation:

	$ mpirun -n 8 ./solution_mpi -in rmat-12
	
	or (--generate is useful for debugging, but incompatible with validation)
	
	$ mpirun -n 4 ./solution_mpi --generate random -s 14

3. Get right answer:

    $ ./gen_valid_info -in rmat-12

4. Run validation tool:

	$ ./validation -ans rmat-12.ans -res rmat-12.res

===============================================================================
Change Log:
---------------------------
Date        Version     Comments
10.02.2017  0.4         + absolute or relative error must be less then 1e-6
06.02.2017  0.3         + gen_valid_info tool
27.01.2017  0.2         + MPI reference implementation, random generator