Various changes motivated by improving CFA score on len-1 queues.
No such CFA score improvement achieved. Each change helped only on stripped-down, "try to isolate an important factor" tests. Generally, the changes are benign refactorings. (Results substantiating "don't hurt" are forthcoming.)
Libcfa changes are
move a read action from between the memory breaks to before them
make the memory breaks conditionally excluded (default included, as before)
Harness changes are
add width, a compiled-in number of lists to use in round-robin order; defaults to 1, which is what was happening all along
make the analysis scripts tolerate (so far, ignore) the width column
rename CLI arg NumNodes to Length (now NumNodes is Length * Width)
factor core testing loops into helper function runtest
switch to signal-based termination (and add uC++ work-around)
put "iterator threading" into ITERS_SAVE, joining preexisting "save iter into elem's self ref"; make iterator threading conditional on iterators-active
disable insertion loop counter and obs_*-variable declarations (and thus writes) when observation disabled
generalize observation to work on multiple lists
make observation and assertion-check-enabled mode work on stripped CFA list implementations like tagging-disabled
through this observation, ensure correctness of multi-list versions
(No files)
Note:
See TracChangeset
for help on using the changeset viewer.