This is the implementations of PageRank using MPI interface. The following alogrithms are implemented in this project:
- Rowwise block 1-D partitioning
- Cyclic 2-D partitioning
- pagerank_1D_par.c: Implementation with rowwise block 1-D partitioning of matrix.
- pagerank_2D_par.c: Implementation with cyclic 2-D partitioning of matrix.
- pagerank_2D_par_sqp.c: Optimized version of pagerank_2D_par.c, when the number of processes is a square number.
mpirun -n [num_processes] program_name -i [dataset_file_name] -o [output_file_name] -m [num_iteration] -t [num_seconds] -v
- -n: Number of processes used. Required in MPI interface.
- -i: Input dataset file name. Required.
- -o: File name to store the resulting vector. If not specified, the vector will be printed out on the console.
- -m: Maximum number of iterations. If not specified, the program will keep running until resulting vector is converged.
- -t: Time limit of execution. If not specified, the program will keep running until resulting vector is converged.
- -v: Verbose mode flag.