aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* Compute stats for response time percentilesGlenn Elliott2014-01-29
|
* Compute proportional graph response times.Glenn Elliott2014-01-29
|
* Allow generated global-scheduled TS to be unsched.Glenn Elliott2014-01-29
|
* Attach ideal end-to-end resp. time to pgmrt argsGlenn Elliott2014-01-29
|
* Generate only schedulable task sets.Glenn Elliott2014-01-29
|
* Write graphs to .dot files.Glenn Elliott2014-01-27
|
* Merge branch 'wip-ecrts14-pgm' of ↵Glenn Elliott2014-01-26
|\ | | | | | | ssh://rtsrv.cs.unc.edu/home/litmus/experiment-scripts into wip-ecrts14-pgm
| * Convert boolean strings to actual bools in dpGlenn Elliott2014-01-22
| |
| * (1)fix merge conflict. (2)fix schedcat integr. bugGlenn Elliott2014-01-22
| |
| * Keep as many records around as needed in parsing.Glenn Elliott2014-01-21
| |
| * Merge branch 'wip-ecrts14-pgm' of ↵Glenn Elliott2014-01-21
| |\ | | | | | | | | | | | | | | | | | | | | | ssh://rtsrv.cs.unc.edu/home/litmus/experiment-scripts into wip-ecrts14-pgm Conflicts: gen/edf_generators.py gen/generator.py
| * | pipeline testsGlenn Elliott2014-01-21
| | |
* | | Add cache_aware_parallelGlenn Elliott2014-01-26
| |/ |/|
* | Allow polluter/splitting span the same task setGlenn Elliott2014-01-18
|/
* Add TODO comment to gen/generator.pyGlenn Elliott2014-01-18
| | | | | | There are still more combinations of task set parameters we need apply to the same task set to facilitiate direct (fair) comparisons between methods.
* Generate wsCycle param for pgmrt.Glenn Elliott2014-01-18
| | | | | | | | This adds wsCycle parameter to parameters generated for pgmrt. wsCycle is set to ceil(1.5) the depth of the graph. This prevents the producer and consumer from accessing the same data at the same time. This simulates real buffer movement in a dataflow program.
* BUG FIX: TimeTracker average computationGlenn Elliott2014-01-17
| | | | | | | The formula for computing the running average was incorrect. This patch fixes that. It also renames the putput fields to make grouping similar values on the screen (by lexical order) easier.
* parse_exps.py: Make data analysis more accurate.Glenn Elliott2014-01-17
| | | | | | | | | | | | | | | This patch makes the data analysis of parse_exps.py. The old code suffered from fragility---logs that were out of order lead to many dropped records. This is because it had a look-ahead buffer of 1. This patch does: 1) Maintains buffers of unmatched records. 2) Preloads 200 records from every sched stream and processes them in sorted order. This patch does increase runtime, but prior results could be useless for many trace logs.
* Merge branch 'wip-ecrts14-pgm' of ↵Glenn Elliott2014-01-17
|\ | | | | | | ssh://rtsrv.cs.unc.edu/home/litmus/experiment-scripts into wip-ecrts14-pgm
| * Correct Litmus sched trace IDsGlenn Elliott2014-01-17
| |
| * Use same taskset for L1-ALL partitionings.Glenn Elliott2014-01-17
| | | | | | | | | | | | | | | | We want to compare the partitioning heuristics amongst themselves, as well as different clustering options. Use the same task set to span these combinations in order to make direct comparisons easier to make.
| * Don't do all part. methods under G-FL/G-EDFGlenn Elliott2014-01-15
| |
| * Retry-loop for task set generationGlenn Elliott2014-01-15
| | | | | | | | | | | | Task set generation put in a retry loop. if a task set fails to be partitionable under any partition scheme, the entire task set is retried.
| * Delay microsecond -> millisecond conversion.Glenn Elliott2014-01-15
| | | | | | | | | | | | | | | | We must delay the microsecond to millisecond conversion because overhead/partitioning heuristics are meant to operate in the microsecond time scale. Scaling now takes place when the sched.py file is generated.
| * Clean up PGM task set generation parameters.Glenn Elliott2014-01-15
| | | | | | | | Work originally by Namhoon.
* | Support PGM-based sched trace analysisGlenn Elliott2014-01-17
|/
* Manual merge of Namhoon's PGM exp generationGlenn Elliott2014-01-14
| | | | | This patch merges in the work Namhoon did to support PGM-based task set experiments.
* Discard interlaced trace eventsGlenn Elliott2014-01-13
|
* Trace only sched events needed for PGM r.t.Glenn Elliott2014-01-13
|
* Script updates.Glenn Elliott2014-01-02
|
* producer/consumer overhead distillation scriptGlenn Elliott2013-10-15
|
* CPMD and producer/consumer overhead scripts.Glenn Elliott2013-10-15
|
* Improved flexibility of plot_exps.py script.Jonathan Herman2013-05-03
| | | | | | | | | * No longer needs an X connection to render. This also vastly increases performance. * If too many configuration values are plotted, a key with color=column1, line=column2, marker=column3 etc is not created. Instead, each combination of values is given its own line/color/marker style and plotted, and each line has an entry in the key. Ugly, but better than nothing.
* Added --collapse option to parse_exps.py for creating simpler graphs.Jonathan Herman2013-05-02
| | | | | | | | | | | | | | | | | This creates csvs which have merged the lines which only differ by variables whose values are numbers (e.g. 'wss', 'number of tasks', or 'duration', but not 'scheduler'). For example, consider a csv which is tracking the change in working set sizes. There are 3 different experiment configurations per WSS, one with 12 tasks, one for 14, and another for 16. Without --collapse, a seperate csv (and line to plot in plot_exps.py) will be created for each of the 12, 14, and 16 configurations. With --collapse, a single csv (and a single line plotted by plot_exps.py) will be created which averages the values of 12, 14, and 16 tasks for each WSS. This is very useful for noticing trends or presenting overhead bar charts or other examples in papers.
* Modified sched.py field padding calculations to account for bitfields.Jonathan Herman2013-05-02
|
* Added --crontab option to run_exps.pyJonathan Herman2013-05-01
| | | | | | This will use crontab to automatically restart the machine and resume the script when the machine crashes. An additional option, -k, is provided to cancel this operation.
* Cleaned up run_exps.py parameters.Jonathan Herman2013-04-30
|
* Minor bug fixes for tuple_table/col_map.Jonathan Herman2013-04-29
|
* Added run_exps.py option to --retry failed experiments.Jonathan Herman2013-04-29
| | | | | | | | If the retry flag is specified, failed experiments will be re-run after all other experiments have run. They can be re-run at most 5 times. This commit required a refactoring of run_exps.py to clean up the main experiment running loop.
* Improved accuracy of sched_trace measurement parsing.Jonathan Herman2013-04-23
| | | | | | | | | | | | * Measurements from tasks missing > 20% of their scheduling records are ignored. This is configurable in config/config.py. * Measurements which only have zero values are ignored. * If either of these 2 situations are encountered print out a message the first time using the common.log_once() method. See parse_exps.py for how this is used with multiple threads. * Measurements from a task's last job are ignored. * Miss ratio is calculated only as a fraction of the number of jobs whose matching release and completion records were found, not just release.
* Improved robustness of run_exps.py execution.Jonathan Herman2013-04-22
| | | | | | | | | | | | | | | | | | | | | Thanks to bcw and gelliott for debugging and ideas. * Print out experiment number and total experiments when starting experiments. * Only sleep and re-release tasks if tasks are waiting to release. * Fail experiment with verbose messages if any tasks fail before becoming ready to release. * When waiting for tasks to become ready for release, reset the waiting time whenever a new task (or task(s)) become ready. * Start regular tracers BEFORE the plugin switch to log data from the switch. * Check the number of running tasks AFTER trying to switch the linux scheduler. This gives plugin deactivate code the opportunity to kill these tasks. * If an invalid executable is specified in the schedule file, fail before attempting to run the experiment and print out the problem. * Propogate exceptions up from experiment failures instead of creating ExperimentFailed exceptions. This commit also made clock-frequency automatically ignored by parse_exps.py. The value of this would change by +- a Mhz between experiments, ruining graphs.
* Scripts read directories created by other scripts if no arguments.Jonathan Herman2013-04-21
| | | | | | | | | | With no arguments, all scripts first try to load the current directory. If the current directory has no data, the scripts search for the output of the previous scripts in the toolchain, e.g. parse_exps.py loads run-data/*, created by run_exps.py. This commit also switched messages to stderr where they belong, and adds in missing lock and unlock overheads.
* Made default generator behavior more intuitive.Jonathan Herman2013-04-19
| | | | | | GenOption defaults can be specified as a single value in addition to a list of values. PartitionedEdfGenerator's now use worst-fit partitioning for the most even distribution of tasks.
* Switched sched_trace data to verbose ctypes structs.Jonathan Herman2013-04-18
|
* Merge branch 'master' of github.com:hermanjl/experiment-scriptsBryan Ward2013-04-17
|\
| * Fixed calculation of tardiness.Jonathan Herman2013-04-17
| |
| * Cleaned up sched_trace output and code.Jonathan Herman2013-04-17
| |
* | which -> thatBryan Ward2013-04-17
|/
* Updated readme to reflect new multiprocessing options.Jonathan Herman2013-04-12
|
* Formatting error in readme.Jonathan Herman2013-04-12
|