The goal of this project is to study the problem of Distributed Sum of Outer Product. In this problem we have P hosts p1, p2, ..., pp, and each pi has two vectors Ai and Bi. We are interested in computing the sum of all outer products of Ai and Bi.
At the end of the computation, each of the P hosts needs to have a copy of the matrix G. The main goal of this project is to design and implement (with MPI) different efficient algorithms to compute G. The students should provide a cost model for their algorithms, and benchmark them on real systems. The algorithms could take into account heterogeneity in the interconnection network (i.e., different links might have a different bandwidth), and/or the sparsity of the input vectors Ai and Bi.
All code related to solving DSOP, including a readme.md
, is located in the folder /code
.
There's a bunch of scripts in the /euler
folder, and a readme.md
explaining how to use them.
Some (ongoing) benchmark results can be found in the /results
folder.
The results used for our report are located in /results/20_benchmark_euler
.
- To the
master
branch, only push code that builds with succeeding tests, perhaps make your own branch such aselwin/master
to keep non-running code - Nevertheless, merge to
master
as often as possible to avoid surprising your team-members and to avoid merge conflict