summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* Fix the random_walk benchmark so that it builds when LITMUS is enabledrtas20-wipJoshua Bakita2021-03-08
|
* Case Study: Add unified makefileJoshua Bakita2021-03-08
|
* Case Study: Temporary paired task workaroundJoshua Bakita2021-03-08
|
* Case Study: Add unified runner script `rtas21-ae-case-study.sh`Joshua Bakita2021-03-08
|
* Delete archaic unsupported DIS runner scriptsJoshua Bakita2021-03-08
| | | | These haven't been used since Joshua's PRP.
* Case Study: Add more fixes for the taskset fixup script to applyJoshua Bakita2021-03-08
| | | | | - Fix floating point numbers in L3 allocations - Fix truncation of texture_synthesis' name
* Case Study: Print liveness messages from Level-C tasksJoshua Bakita2021-03-08
| | | | | Printing is too slow for many Level-A and -B tasks, so we limit it to Level-C.
* Case Study: Update pre-packaged task setsJoshua Bakita2021-03-08
|
* Slightly increase the efficiency of the case study scriptJoshua Bakita2021-03-07
|
* SD-VBS: Fix memory leaks and tweak allocation boundsJoshua Bakita2021-03-07
| | | | | | | - Fix leaks in localization, multi_ncut, svm, and texture_synthesis - Lower preallocation for sift and texture_synthesis to match memory profile with QCIF - Remove trailing whitespace in script_localization.c
* Fix a memory leak in the SD-VBS "tracking" benchmarkJoshua Bakita2021-02-11
| | | | | | We were leaking the results and some intermediate state every job. Also updates the size of the preallocated memory to 16MB (should be plenty, as the WSS per Massif is only ~1MB for qcif).
* Small scripting cleanupsJoshua Bakita2020-11-05
| | | | | | | | | - Add a unified runner script for DIS - Remove explicit case study termination script (do `kill ${cat pids.txt}` instead) - Auto-create bin directories for TACLe - Add the python cache directory to the gitignore - Tweak input path representation in benchmark name files
* Case study runner script fixesJoshua Bakita2020-10-30
| | | | | | | - Quote lookup ID in ID2PID - Fix SD-VBS benchmark names - Use bash rather than sh as the shell so that `echo -e` works - Remove dispatch limit that was for debugging
* Don't exit the case study script until confirmedJoshua Bakita2020-10-25
|
* Fixup the case study scriptJoshua Bakita2020-10-24
| | | | | | | | | | | | | | | | | New features: - Checks arguments - Checks that we're root first - Checks if task launches succeed - Checks that a case study is not already running Fixes: - Removes invalid uses of sudo - Fixes use of ',' rather than ';' in resctrl specification - Fixes PID determination - Always launches Level-C tasks as asynchronous threads Additionally converts the whole file to only use spaces and to be directly executable.
* Fix task names in case study tasksetsJoshua Bakita2020-10-24
|
* Cleanup whitespace in run_case_study.pyJoshua Bakita2020-10-24
|
* Merge case study updates from sd-vbs branchLeo Chan2020-10-24
|
* Log PID + job number in tardiness alertsJoshua Bakita2020-10-24
|
* Alert to stderr on benchmark deadline missJoshua Bakita2020-10-24
|
* Fix heap corruption in the stitch benchmark and tweak some heap limitsJoshua Bakita2020-10-23
|
* Squashed commit sd-vbs from Leo:Joshua Bakita2020-10-23
| | | | | | - Fixes SD-VBS build with LITMUS 1 defined - Fixes memory leak in stitch and tracking benchmarks - Adds initial case-study script and configurations
* Fix an argument parsing error in libextra and cleanupJoshua Bakita2020-10-23
|
* Fix arguments for paired tasksJoshua Bakita2020-10-23
|
* Set exec_cost to a valid value in libextraJoshua Bakita2020-10-23
|
* Transform LITMUS-RT support in libextra to imply case-study modeJoshua Bakita2020-10-22
| | | | | | | | | | | 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.)
* Add script for computing M_i valuesJoshua Bakita2020-10-22
| | | | | | | | Remember, M_i values are the worst-case slowdown of the average- -case execution time. Also factor out functions shared with M_ij computation code to a shared library.
* Get all the SD-VBS tests running and add a helper script + typo fixJoshua Bakita2020-10-22
| | | | | | | - Add a run_all_sd-vbs.sh script - Fix a typo in run_all_tacle.sh - Fix an issue with reversed arguments for asynchronous task pairs in run_bench.sh
* Make SD-VBS compatible with run_bench.sh and cleanupJoshua Bakita2020-10-22
| | | | | | | | | | | | | | | | 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
* Squashed commit of the sb-vbs branch.Leo Chan2020-10-22
| | | | | | | | | | | Includes the SD-VBS benchmarks modified to: - Use libextra to loop as realtime jobs - Preallocate memory before starting their main computation - Accept input via stdin instead of via argc Does not include the SD-VBS matlab code. Fixes libextra execution in LITMUS^RT.
* Remove an old and broken scriptJoshua Bakita2020-10-22
|
* Point wbinvd submodule to my repository instead of upstreamJoshua Bakita2020-10-22
|
* Fix 4 more bugs in TACLeBenchJoshua Bakita2020-10-22
| | | | | | - anagram: Fix two off-by-ones, the heap size, and the result - rijndael_dec: Reset result checksum at job start - huff_enc: Reset mutable global variables at job start
* Add submodules. Remember to use git clone --recurse-submodules now.Joshua Bakita2020-10-22
|
* Add a phenomenal script to distill SMT pair data to Mij and Mi scoresJoshua Bakita2020-10-22
|
* Fix Makefiles so that a custom CFLAGS doesn't break the buildJoshua Bakita2020-10-22
|
* Add pair benchmarking and isolation specification into run_bench.shJoshua Bakita2020-10-22
| | | | | | | | | | | | | | | | | | | | This allows `run_bench.sh` to replace all previous general paired benchmarking scripts. See `run_everything.sh` for an example of how to use the new script. This also fixes two critical bugs present in the old scripts: 1. The cpus_list was incorrectly set for resctrl when running synchronous pair timing with L2+L3 isolation (i). Each write to that file replaces the previous contents, and it was previously written once for each core. This prevented the entire 1st core from using any L3 cache. 2. The competing task list was indexed improperly in the asynchronous pair timing script. This caused the competing task to always be identical to the task being profiled. These issues combine to imply that in the rejected RTSS'20 paper: - All Level-C SMT timing data is suspect - Level-A and -B SMT timing data with L2+L3 isolation (i) is wildly optimistic
* Fix infinite looping with libextraJoshua Bakita2020-10-21
|
* Remove duplicate summary script and don't output memory info if non presentJoshua Bakita2020-10-21
|
* Unify unpaired timing scripts for DIS, TACLe, and SD-VBSJoshua Bakita2020-10-20
| | | | | Now supports specifying an input generation command for each benchmark - see dis/dis2MbInNames.txt for an example.
* Whitespace fixes for TACLeBench and copyright update in extra.hJoshua Bakita2020-10-20
| | | | | Also move run_all_dis.sh up a directory in preperation for further changes.
* Fix the 4 TACLeBench members that would not loop beforeJoshua Bakita2020-10-20
| | | | | | - anagram, audiobeam: Reset heap in _init() function - g723_enc: Don't use static local variables - huff_dec: Reset all global state in _init() function
* Convert TACLeBench to use new libextra APIJoshua Bakita2020-10-20
| | | | No other changes.
* TACLe and DIS benchmark fixesJoshua Bakita2020-10-20
| | | | | | | | | | - 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
* Enable internal DIS job looping and port to new extra.h APIJoshua Bakita2020-10-19
| | | | | | | | | | | | 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
* Unify all the versions of extra.h into a single multipurpose headerJoshua Bakita2020-10-19
| | | | | | | | | | | | | | | | | | | | | | 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.
* Rewrite extra.h for task baselines to be easier to useJoshua Bakita2020-10-18
| | | | | New macro `for_each_job` simplifies instrumentation. Backwards-compatible.
* All the TACLeBench runner scripts as used for the (rejected) RTSS'20 submissionJoshua Bakita2020-10-17
| | | | | Everything without isolation: run_tacle_rtss20.sh For isolation you have to run the hodgepodge of scripts as before.
* All the DIS runner scripts as used for the (rejected) RTSS'20 submissionJoshua Bakita2020-10-17
| | | | | | | | | 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
* Fix DIS coding style by running them all through clang-formatJoshua Bakita2020-10-17
| | | | | Also fixes a missing header in DISstressmarkRNG.h and the "all" make target. No functional changes.