mirror of
https://github.com/nwchemgit/nwchem.git
synced 2026-07-28 14:15:30 -04:00
| .. | ||
| he_TSHG_FFFF.nw | ||
| he_TSHG_FFFF.out | ||
| he_TSHG_FFFT.nw | ||
| he_TSHG_FFFT.out | ||
| he_TSHG_FFTF.nw | ||
| he_TSHG_FFTF.out | ||
| he_TSHG_FFTT.nw | ||
| he_TSHG_FFTT.out | ||
| he_TSHG_FTFF.nw | ||
| he_TSHG_FTFF.out | ||
| he_TSHG_FTFT.nw | ||
| he_TSHG_FTFT.out | ||
| he_TSHG_FTTF.nw | ||
| he_TSHG_FTTF.out | ||
| he_TSHG_FTTT.nw | ||
| he_TSHG_FTTT.out | ||
| he_TSHG_TFFF.nw | ||
| he_TSHG_TFFF.out | ||
| he_TSHG_TFFT.nw | ||
| he_TSHG_TFFT.out | ||
| he_TSHG_TFTF.nw | ||
| he_TSHG_TFTF.out | ||
| he_TSHG_TFTT.nw | ||
| he_TSHG_TFTT.out | ||
| he_TSHG_TTFF.nw | ||
| he_TSHG_TTFF.out | ||
| he_TSHG_TTFT.nw | ||
| he_TSHG_TTFT.out | ||
| he_TSHG_TTTF.nw | ||
| he_TSHG_TTTF.out | ||
| he_TSHG_TTTT.nw | ||
| he_TSHG_TTTT.out | ||
| README | ||
| run_test | ||
README memory settings test =========================== With the memory initialization having changed we needed special ways to work out valid memory settings. Before release 6.1 you either used the default memory settings or you specified everything in the input file. Now there are compile time memory settings, they may be set in nwchemrc, by environment variables or in the input. At this point it makes little sense to force all sets of memory settings to be complete (i.e. set stack, heap, global and total). But if they are incomplete we need rules to generate a complete set of settings. These rules built a hierarchy from compiled in default to user input: - compiled in defaults - nwchemrc - environment variables - user input The user input file takes precedence over anything else and compile time defaults are overridden by anything else. If Total is the default and something else is set. Then the resolution is simply to adjust the total memory setting and leave anything else untouched. If Total is set and somethings else is set then the lowest priority setting is adjusted to ensure that Total = Stack + Heap + Global. If more than one setting needs to be changed then the usual partitioning is used. I.e. if Total = 1000 MB and Stack = 400 MB then Heap = 0.25/(0.25+0.50)*(Total - Stack) = 200 MB Global = 0.50/(0.25+0.50)*(Total - Stack) = 400 MB The test cases in this directory are just to check that all the various combinations of set memory sizes produce the expected result. The flags TSHG stand for Total, Stack, Heap, and Global, in the second quartet T (true) means it is set and F (false) means it is not set in the input file. I.e. he_TSHG_TFFT.nw means Total and Global are set in the input but Stack and Heap are not. These tests are not to be included in the usual test run script as we have no means of automatically checking the results or even running the jobs successfully through that infra-structure. Also there should be no need to test this stuff on multiple platforms as we are looking for particular logical errors in the design only.