| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
| |
wip
wip
wip
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Adds <period> and <criticality level> parameters to benchmarks and
disables cache flushing when compiled with LITMUS. Also fixes build
with LITMUS enabled on yamaha.cs.unc.edu.
Also allows output to be disabled, automatically infers _rt_lock_id,
and allows for a specific pair ID for paired tasks. (The pair ID is
added to all the semaphore and shared memory names, allowing multiple
pairs to run in the system at a time.)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SD-VBS:
- Run silently
- Fix some whitespace errors
- Don't duplicate extra.h
- Auto-detect if building with LITMUS-RT
- Disable result checking
- Add helper symlinks
Misc:
- Remove unused code from libextra
- Set some missing rt_param fields in libextra
- Disable CSV info dump from computeSMTslowdown.sh
- Widen scope of .gitignore on .txt files
- Include list of 2MB DIS pair benchmarks and inputs
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Now supports specifying an input generation command for
each benchmark - see dis/dis2MbInNames.txt for an example.
|
|
|
|
|
| |
Also move run_all_dis.sh up a directory in preperation for
further changes.
|
|
|
|
|
|
|
|
|
|
| |
- Use consistent approach to prevent computations from being
optimized out in the DIS benchmarks
- Don't print results in the DIS benchmarks
- Fix a memory corruption in TACLe's "epic" benchmark reflect1()
- Fix return codes for all benchmarks
- Rename run_baseline.sh to run_bench.sh in preperation for this
being the main benchmarking script
|
|
|
|
|
|
|
|
|
|
|
|
| |
Changes to DIS code:
- field, pointer, transitive, and update's random initialization
steps moved the main job loop (so that they run on fresh state
each job).
- Moved free() calls outside of the job loop in matrix
- Removed loose clock() call in pointer
Misc fixes:
- Added input file for neighborhood
- Log status before, rather than after, printing in gen_input.py
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There was previously a huge amount of shared code that had to be
copied back and forth. This should reduce the maintenance burden
by containing all future changes to a single file.
New unified library is fully backwards-compatible but also
introduces and the easy-to-use `for_each_job` macro which
replaces the specific `for(...) START_LOOP ... STOP_LOOP`
format requirement and is generally much harder to abuse.
New unified library also automatically cleans up its shared memory
and semaphores, so this commit also removes the separate
`cleanupSemaphores` binary.
I also found a precursor of `extra.h` written by Sims in
`litmusStuff.h`. This code is only interesting for historical
purposes, so it is also removed in this commit.
This commit also adds debug options to all the Makefiles and
silences rm's complaints about non-existent files in make clean.
|
|
|
|
|
|
|
|
|
| |
DANGER! There's an inconsistency in the input files used for the
all-pairs tests and those used for the baseline tests.
Baselines: run_all_dis.sh calls run_dis.sh to do all baselines.
All-pairs: Uses old TACLe script (not included here).
Cache allocation 2nd-order effects on SMT friendliness: run_pair_convexity.sh
|
|
|
|
|
| |
Also fixes a missing header in DISstressmarkRNG.h and the "all"
make target. No functional changes.
|
|
|
|
|
| |
These are compatible with the outputs of all the DIS stressmarks
as instumented with `extra.h`.
|
|
|
|
| |
Also remove some unused code from the cleanupSemaphores utility
|
|
|
|
| |
Now as used for (rejected) RTSS'20 paper
|
|
|
|
|
|
|
|
|
|
|
| |
- All: Output times to stderr and nothing to stdout
- Field, Update, Pointer: change definition of a job to match other
stressmark execution times more closely
- Matrix: move all allocations into main()
- Update: Use volatile to prevent computations from being optimized out
- Transitive: Use volatile to prevent computations from being optimized out
- Neighborhood: Use working version of drawLineSegment from original DIS
sample code
|
|
|
|
|
| |
Note that this repo does not attempt to keep a copy of the original
DIS benchmark distributions. UNC real-time has another repo for that.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Changes:
- Backpoint fix to randInt range
- Instrument benchmarks with time tracking
- assert inputs are correct length to fix compiler warnings
Problems:
- Timing on a per-loop basis is non representative of real-world
workloads, as we clear the cache after every loop. These all need
to be re-instrumented to record times for the whole benchmark,
rather than per-loop.
|
| |
|
| |
|
|
|
|
| |
Works for three-way WSS/cache size/execution time comparisons
|
|
|
|
| |
A heavily rewritten version of mc2spin as written by Namhoon.
|
|
|
|
|
|
|
| |
- Revert type change in Neighborhood microbenchmark
- Remove inputs modified to fix in the available memory on the
i.MX6DQ PRP test platform
- Change default configuration to build without LITMUS/MC^2/MMDC
|
|
|
|
| |
Note that Neighborhood has been modified to use less space
|
| |
|
|
|
|
|
|
|
|
| |
- Remove unused parameters to extra.h
- Use floats to avoid integer overflow when timing long loops
- Only include litmus headers and/or MMDC headers if the appropriate
define is set in extra.h
- Update job parameters to match those used in my PRP experiments
|
|
|