[m-users.] explaining index use

Daniels, Marcus G mdaniels at lanl.gov
Sun Jul 31 00:26:44 AEST 2016


Peter Wang writes:

"You could write a tool that generates a file containing the records and indices from a table of facts (without invoking a C compiler) then, as you suggest, mmap that in and do your lookups on that.
Perhaps such a thing exists?  It doesn't need to be Mercury specific.
On the other hand, it's no different from a read-only database."

For me, one of the big benefits of not using fact tables is that fact tables are static.   I'm doing something like tabu search and so the most direct way to not revisit bad answers is to consume facts rather than tagging them as inactive.   (It's like removing edges from a graph.)  Even large sets of removals from Mercury's multi_maps are pretty fast.   The biggest problem now is just making the original set of complete indices.   I can use machines that have silly amounts of RAM -- I'm the only user -- but the Boehm collector has a 128GB limitation and will abort.   Similarly I could change to a different grade.   But either way, I'm losing hours loading the graph and its metadata.   I'll look around for a suitable in-memory database. 

Thanks,

Marcus


More information about the users mailing list