Turned -Werror back on for CMake builds
For "build," I turned on all -Werror, instead
of just one type, so hopefully that works.
Also modified the Werror_check integration test to
check all CMakeLists files.
notify author
notify list [rosetta-logs@googlegroups.com]
Aaaaaaaa - these unused-private-field warnings are awful! I've spent an hour and am only
half way through core. I can't get anything done here. I'm giving up.
notify author
notify list [rosetta-logs@googlegroups.com]
Reducing the memory use for Rama and Rama2B.
This commit brings in modifications to the Ramachandran and Ramachandran2B
classes to dramatically reduce the memory usage needed to perform the
sampling used by KIC and the next-generation KIC loop modeling protocols.
Previously, the Ramachandran table would look at all 36x36 phi/psi bins
and write down the phi and psi angles for each bin with a probability
above some very small threshold; then it created a very large table
with several thousand entries and write down the phi/psi values into
that table proportionately. I.e., if one phi/psi bin had 10% probability
then if there were 2500 entries in the table, that bin would have its
entries written down 250 times. Then, this table could be use to
proprotionately draw phi/psi values.
The new strategy is to compute the cumulative distribution function
for the phi and psi bins, to then draw a random number between 0 and 1,
and then to find the phi/psi bin where its CDF value is less than
the random number and the next phi/psi bin's CDF value is greater than
the random number. This strategy has remarkably little memory overhead;
just as much as is needed to store the probabilities in the first place.
This brings NGK's memory use down from 5GB+ (since the Rama2B's memory
footprint was 20x larger) to basically the same memory overhead as the
rest of Rosetta.
Thanks to Brian for discussions on how to implement this and to Amelie and
Roland for running the loop modeling benchmarks to make sure nothing worsened.
All unit tests pass. Integration tests using KIC and next-generation KIC
all change.
notify author
notify list [rosetta-logs@googlegroups.com]
Fixing the buried_unsat_kinemage integration test which has been failing.
Also fixing an initialization-list order error in some of Jared's code and
getting rid of copoius quantities of trailing whitespace.
notify author
notify list [rosetta-logs@googlegroups.com]