1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
|
.\" Man page derived from README.IN
.
.TH workgen 1 "2016-01-25" "rt\-app"
.nf
.SH NAME
workgen \- rt\-app wrapper for simulating a real\-time periodic load
.
.SH SYNOPSIS
.B workgen
.I <config-file>
.
.SH INTRODUCTION
.B workgen
is a test application that starts multiple periodic threads in order to
simulate a real\-time periodic load.
It is a wrapper for the rt\-app program, which sanitises and
preprocesses the JSON files describing the workload, before running rt\-app.
.PP
.nf
The code is currently maintained on GitHub:
.br
\fI\%https://github.com/scheduler-tools/rt\-app\fP
.fi
.
.SH REQUIREMENTS
.B workgen
runs on GNU/Linux. It needs python and json-c to run, and a 3.14
or later linux kernel supporting the SCHED_DEADLINE policy
(unless built without the optional libdl).
.
.SH USAGE
.B workgen
.I <config_file>
.
where config file is a full/relative path to a JSON file or "\-" (without quotes) to read JSON data from stdin.
.PP
.B workgen
will parse, check and update the JSON-like file in order to strictly
match the JSON grammar before calling rt\-app to execute the
sequence described in it.
.PP
workgen enables some freedom compared to stricter json grammar rules. For example,
.RS
- You don't have to ensure uniqueness of key in json object, workgen
will check the file and ensure that each key is unique by appending
an index if necessary.
The feature is quite useful when you describe a sequence made of
similar events e.g. a sequence of multiple sleep and run events.
.br
- Some values can be omitted and workgen will add them when it parses
the file before starting the use case.
.RE
.PP
See
.I /usr/share/doc/rt\-app/tutorial.txt
for details of the JSON config file format
.PP
.
.SH SEE ALSO
.B rt\-app
.I <config_file>
can be used directly.
.PP
The python merge script (
.I /usr/share/doc/rt\-app/examples/merge.py
) can be
used to combine JSON snippets into the config file. e.g:
.br
.B \./merge.py
\-o
.I combined.json global.json resources.json thread0.json thread1.json thread2.json thread3.json
.
.SH FILES
.nf
Numerous example workloads and building blocks can be found in
.I /usr/share/doc/rt\-app/examples/*.json
.fi
|