github.com/eth-easl/loader@v0.0.0-20230908084258-8a37e1d94279/tools/trace_synthesizer/README.md (about)

     1  # Trace Synthesizer
     2  
     3  ## Usage
     4  
     5  ### Generate a synthetic trace
     6  
     7  The trace synthesizer is a replacement for the decommissioned RPS mode of the loader.
     8  The user can define a starting RPS, step size and the target RPS of the last slot.
     9  This then gets converted into a csv file containing the invocations per minute for the synthetic trace,
    10  which can then be run in the trace mode of the Loader.
    11  Further the user can specify the execution time of the function(s), as well as their memory footprint.
    12  These are used to generate the memory and durations csv files. Like in the decommissioned RPS mode,
    13  the user can also specify the number of functions, which will simply be functions with different names,
    14  which then use different instances. All functions have the same execution time, memory footprint and RPS.  
    15  From within the trace_synthesizer folder, use:
    16  
    17  
    18  ```console
    19  python3 . generate -h
    20  
    21  usage: . generate [-h] [-f integer] -b integer -t integer -s integer -dur integer [-e integer] [-m integer] -o path
    22  
    23  optional arguments:
    24    -h, --help            show this help message and exit
    25    -f integer, --functions integer
    26                          Number of functions in the trace
    27    -b integer, --beginning integer
    28                          Starting RPS value
    29    -t integer, --target integer
    30                          Maximum RPS value
    31    -s integer, --step integer
    32                          Step size
    33    -dur integer, --duration integer
    34                          Duration of each RPS slot in minutes
    35    -e integer, --execution integer
    36                          Execution time of the functions in ms
    37    -mem integer, --memory integer
    38                          Memory usage of the functions in MB
    39    -o path, --output path
    40                          Output path for the resulting trace
    41    -m integer, --mode integer
    42                          Normal [0]; RPS sweep [1]; Burst [2]
    43  ```
    44  
    45  
    46  
    47  ### Example
    48  
    49  ```bash
    50  python3 trace_synthesizer generate -f 2 -b 10 -t 20 -s 5 -dur 3 -e 500 -m 350 -o example 
    51  ```
    52