molpopgen / fwdpp

fwdpp is a C++ template library for implementing efficient forward-time population genetic simulations
http://fwdpp.readthedocs.io
GNU General Public License v3.0
27 stars 11 forks source link

Improve memory performance during simplification #242

Closed molpopgen closed 4 years ago

molpopgen commented 4 years ago

Ancestry segments are currently stored as a vector<vector<segment>>. This PR replaces that data structure with ancestry_list, with stores a vector and index vectors to model a forward list of ancestry chains.

Also emits output edges back into the original input edge table during simplification. This change also results in substantial RAM savings.

Add examples/load_table_collection, which also helped testing the outputs of this branch vs. dev.