Menu

Tree [2edfe5] master /
 History

HTTPS access


File Date Author Commit
 Random123 2014-09-29 gslota gslota [03a9c6] FastPath Version 1.0 initial commit
 Makefile 2014-09-29 gslota gslota [03a9c6] FastPath Version 1.0 initial commit
 README 2015-07-02 George Slota George Slota [2edfe5] added in outer-loop parallelism
 colorcount.hpp 2015-07-02 George Slota George Slota [2edfe5] added in outer-loop parallelism
 dynamic_table_path.hpp 2015-06-26 George Slota George Slota [c0cb1c] minor bug fixes and optimizations, added in max...
 fastpath.cpp 2015-07-02 George Slota George Slota [2edfe5] added in outer-loop parallelism
 fastpath.h 2014-09-29 gslota gslota [03a9c6] FastPath Version 1.0 initial commit
 graph.hpp 2014-09-29 gslota gslota [03a9c6] FastPath Version 1.0 initial commit
 max_heap.hpp 2015-06-26 George Slota George Slota [c0cb1c] minor bug fixes and optimizations, added in max...
 mint-human.graph 2014-09-29 gslota gslota [03a9c6] FastPath Version 1.0 initial commit
 parse_mint.cpp 2014-09-29 gslota gslota [03a9c6] FastPath Version 1.0 initial commit
 util.hpp 2014-09-29 gslota gslota [03a9c6] FastPath Version 1.0 initial commit

Read Me

'########:::'###::::'######:'########'########::::'###:::'########'##::::'##:
 ##.....:::'## ##::'##... ##... ##..::##.... ##::'## ##::... ##..::##:::: ##:
 ##:::::::'##:. ##::##:::..:::: ##::::##:::: ##:'##:. ##:::: ##::::##:::: ##:
 ######::'##:::. ##. ######:::: ##::::########:'##:::. ##::: ##::::#########:
 ##...::::#########:..... ##::: ##::::##.....:::#########::: ##::::##.... ##:
 ##:::::::##.... ##'##::: ##::: ##::::##::::::::##.... ##::: ##::::##:::: ##:
 ##:::::::##:::: ##. ######:::: ##::::##::::::::##:::: ##::: ##::::##:::: ##:
..:::::::..:::::..::......:::::..::::..::::::::..:::::..::::..::::..:::::..::
Finding pathways using the FASCIA subgraph counting framework

26 May 2015 -- v1.1
Optimizations and bug fixes, added in max heap and outer-loop parallelism

29 September 2014 -- v1.0
Initial version

################################################################################
To compile: 
  1. If needed, edit Makefile and change default compiler options (g++)
  2. $ make


################################################################################
To run: ./path -g [graphfile] -l [path_length] [options]
options =
  -i [iterations]  number of iterations to run
  -n [num paths]   number of paths to find
  -o               use outer-loop parallelism
  -v               verbose output
  -t               report timing
  -h               print this


################################################################################
Graphfile format: 
  -Use mint-human.graph for reference
  -Initial line gives 'number of vertices' and 'number of undirected edges'
  -Each subsequent line represents an edge as: 
    (vertex 1) (label 1) (vertex 2) (label 2) (Weight [0.0-1.0])
  -Vertex ids should be zero indexed, max id = ('number of vertices' - 1)
  -There should be a total of ('number of undirected edges' + 1) lines in graphfile
  -Multi-edges and self-loops will be ignored during calculation


graphfile:
100 1000
0 Q9BV28 1 Q8WVB3 0.15
0 Q9BV28 2 P51159 0.25
0 Q9BV28 3 Q16643 0.05
1 Q8WVB3 2 P51159 0.15
2 P51159 3 Q16643 0.10
...
...


################################################################################
Examples:

1. Find best length 6 path on mint-human graph, run 100 iterations
  ./path -g mint-human.graph -l 6 -i 100

2. Find 10 best length 4 paths on mint-human graph, run 10 iterations, verbose output
  ./path -g mint-human.graph -l 4 -i 10 -n 10 -v

3. Report execution time for finding best length 10 path mint-human after 100 iterations
  ./path -g mint-human.graph -l 7 -i 100 -t


################################################################################
Questions, bugs, comments, etc:

Please direct all comments and questions to:
  George Slota <gslota@psu.edu>