bionic (1) workgen.1.gz

Provided by: rt-app_0.3-2_amd64 bug

NAME

       workgen - rt-app wrapper for simulating a real-time periodic load

SYNOPSIS

       workgen <config-file>

INTRODUCTION

       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.

       The code is currently maintained on GitHub:
       https://github.com/scheduler-tools/rt-app

REQUIREMENTS

       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).

USAGE

       workgen <config_file> where config file is a full/relative path to a JSON file or "-" (without quotes) to
       read JSON data from stdin.

       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.

       workgen enables some freedom compared to stricter json grammar rules. For example,
              - 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.
              - Some values can be omitted and workgen will add them when it parses the file before starting the
              use case.

       See /usr/share/doc/rt-app/tutorial.txt for details of the JSON config file format

SEE ALSO

       rt-app <config_file> can be used directly.

       The python merge script ( /usr/share/doc/rt-app/examples/merge.py ) can be used to combine JSON  snippets
       into the config file. e.g:
       ./merge.py   -o   combined.json   global.json   resources.json   thread0.json  thread1.json  thread2.json
       thread3.json

FILES

       Numerous example workloads and building blocks can be found in
       /usr/share/doc/rt-app/examples/*.json