Ignore:
Timestamp:
Jan 19, 2026, 11:38:54 AM (4 months ago)
Author:
Michael Brooks <mlbrooks@…>
Branches:
master, stuck-waitfor-destruct
Children:
79a8c2a
Parents:
5a95560
Message:

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
File:
1 edited

Legend:

Unmodified
Added
Removed
  • doc/theses/mike_brooks_MMath/benchmarks/list/Makefile

    r5a95560 r9d3dc40  
    1313CC = gcc-11
    1414CXX = g++-11
    15 UXX ?=  ~/u++/u++-7.0.0/bin/u++
     15UXX ?=  ~/usys1/uCPP/source/bin/u++
    1616
    1717hi:
     
    412412        $(MAKE) results-latest.csv RUN_DURATION_SEC=5 RUN_REP_IDS=4 RUN_DATA_SIZE_MODE=sweetspot RUN_INTERLEAVE_PCTS='0' FX_SOLUTIONS='lq-tailq lq-list cfa-cfa cfa-mandHead cfa-noListed cfa-noIter cfa-likeLq cfa-strip upp-upp cpp-stlref' MAKE_DISABLE_OBSERVATION=yes EXTRA_COMP_FLAGS=-DDISABLE_INTERLEAVING
    413413        cat results-latest.csv >> $@
    414         $(MAKE) results-latest.csv RUN_DURATION_SEC=5 RUN_REP_IDS=4 RUN_DATA_SIZE_MODE=sweetspot RUN_INTERLEAVE_PCTS='0' FX_SOLUTIONS='lq-tailq lq-list cfa-cfa cfa-mandHead cfa-noListed cfa-noIter cfa-likeLq cfa-strip upp-upp cpp-stlref' MAKE_DISABLE_OBSERVATION=yes EXTRA_COMP_FLAGS=-DDISABLE_INTERLEAVING
     414        $(MAKE) results-latest.csv RUN_DURATION_SEC=5 RUN_REP_IDS=5 RUN_DATA_SIZE_MODE=sweetspot RUN_INTERLEAVE_PCTS='0' FX_SOLUTIONS='lq-tailq lq-list cfa-cfa cfa-mandHead cfa-noListed cfa-noIter cfa-likeLq cfa-strip upp-upp cpp-stlref' MAKE_DISABLE_OBSERVATION=yes EXTRA_COMP_FLAGS=-DDISABLE_INTERLEAVING
    415415        cat results-latest.csv >> $@
     416
     417SHORT_SEMIPERIM=7
     418
     419results-short-once.phony: MAKE_DISABLE_OBSERVATION=yes
     420results-short-once.phony: LEN_LIMIT=$(strip $(shell echo $$(($(SHORT_SEMIPERIM)-$(WIDTH)+1))))
     421results-short-once.phony: LEN_VALS=$(strip $(shell echo {1..$(LEN_LIMIT)}))
     422results-short-once.phony: RUN_DATA_SIZES= $(call cross,-,$(LEN_VALS),1000000)
     423results-short-once.phony: EXTRA_COMP_FLAGS+= -DDISABLE_INTERLEAVING -DWIDTH=$(WIDTH)
     424results-short-once.phony: FX_SOLUTIONS=lq-tailq cfa-cfa
     425results-short-once.phony: OP_MOVEMENTS=queue
     426results-short-once.phony: OP_ACCESSORS=allhead
     427results-short-once.phony: FORCE cleanbuild
     428        $(MAKE) results-latest.csv RUN_DATA_SIZE_MODE=manual RUN_DATA_SIZES="$(RUN_DATA_SIZES)" RUN_INTERLEAVE_PCTS='0' FX_SOLUTIONS='lq-tailq cfa-cfa' EXTRA_COMP_FLAGS=-DDISABLE_INTERLEAVING OP_MOVEMENTS=queue OP_ACCESSORS=allhead MAKE_DISABLE_OBSERVATION=yes
     429
     430results-short.csv: FORCE
     431        rm -f $@
     432        for i in {1..$(SHORT_SEMIPERIM)}; do    $(MAKE) results-short-once.phony WIDTH=$$i; cat results-latest.csv >> $@; done
    416433
    417434results-zoomout-noshuf.csv: MAKE_DISABLE_OBSERVATION=yes
     
    455472results-smoketest.csv: OP_POLARITIES=insfirst
    456473results-smoketest.csv: OP_ACCESSORS=allhead
     474results-smoketest.csv: EXTRA_COMP_FLAGS+= -DDISABLE_INTERLEAVING
    457475results-smoketest.csv: $(RESULT)
    458476        mv $< $@
     
    469487export FX_SOLUTIONS
    470488export MAKE_DISABLE_OBSERVATION
     489export WIDTH
     490export EXTRA_COMP_FLAGS
    471491
    472492cleanbuild: FORCE clean
Note: See TracChangeset for help on using the changeset viewer.