diff options
Diffstat (limited to 'benchmarks/wsim')
-rw-r--r-- | benchmarks/wsim/README | 56 | ||||
-rw-r--r-- | benchmarks/wsim/media_17i7.wsim | 7 | ||||
-rw-r--r-- | benchmarks/wsim/media_19.wsim | 10 | ||||
-rw-r--r-- | benchmarks/wsim/media_load_balance_17i7.wsim | 7 | ||||
-rw-r--r-- | benchmarks/wsim/media_load_balance_19.wsim | 10 | ||||
-rw-r--r-- | benchmarks/wsim/vcs1.wsim | 26 | ||||
-rw-r--r-- | benchmarks/wsim/vcs_balanced.wsim | 26 |
7 files changed, 142 insertions, 0 deletions
diff --git a/benchmarks/wsim/README b/benchmarks/wsim/README new file mode 100644 index 00000000..7aa0694a --- /dev/null +++ b/benchmarks/wsim/README @@ -0,0 +1,56 @@ +Workload descriptor format +========================== + +ctx.engine.duration_us.dependency.wait,... +<uint>.<str>.<uint>[-<uint>].<int <= 0>.<0|1>,... +d|p|s.<uiny>,... + +For duration a range can be given from which a random value will be picked +before every submit. Since this and seqno management requires CPU access to +objects, care needs to be taken in order to ensure the submit queue is deep +enough these operations do not affect the execution speed unless that is +desired. + +Additional workload steps are also supported: + + 'd' - Adds a delay (in microseconds). + 'p' - Adds a delay relative to the start of previous loop so that the each loop + starts execution with a given period. + 's' - Synchronises the pipeline to a batch relative to the step. + 't' - Throttle every n batches + 'q' - Throttle to n max queue depth + +Engine ids: RCS, BCS, VCS, VCS1, VCS2, VECS + +Example (leading spaces must not be present in the actual file): +---------------------------------------------------------------- + + 1.VCS1.3000.0.1 + 1.RCS.500-1000.-1.0 + 1.RCS.3700.0.0 + 1.RCS.1000.-2.0 + 1.VCS2.2300.-2.0 + 1.RCS.4700.-1.0 + 1.VCS2.600.-1.1 + p.16000 + +The above workload described in human language works like this: + + 1. A batch is sent to the VCS1 engine which will be executing for 3ms on the + GPU and userspace will wait until it is finished before proceeding. + 2-4. Now three batches are sent to RCS with durations of 0.5-1.5ms (random + duration range), 3.7ms and 1ms respectively. The first batch has a data + dependency on the preceding VCS1 batch, and the last of the group depends + on the first from the group. + 5. Now a 2.3ms batch is sent to VCS2, with a data dependency on the 3.7ms + RCS batch. + 6. This is followed by a 4.7ms RCS batch with a data dependency on the 2.3ms + VCS2 batch. + 7. Then a 0.6ms VCS2 batch is sent depending on the previous RCS one. In the + same step the tool is told to wait for the batch completes before + proceeding. + 8. Finally the tool is told to wait long enough to ensure the next iteration + starts 16ms after the previous one has started. + +When workload descriptors are provided on the command line, commas must be used +instead of new lines. diff --git a/benchmarks/wsim/media_17i7.wsim b/benchmarks/wsim/media_17i7.wsim new file mode 100644 index 00000000..5f533d8e --- /dev/null +++ b/benchmarks/wsim/media_17i7.wsim @@ -0,0 +1,7 @@ +1.VCS1.3000.0.1 +1.RCS.1000.-1.0 +1.RCS.3700.0.0 +1.RCS.1000.-2.0 +1.VCS2.2300.-2.0 +1.RCS.4700.-1.0 +1.VCS2.600.-1.1 diff --git a/benchmarks/wsim/media_19.wsim b/benchmarks/wsim/media_19.wsim new file mode 100644 index 00000000..f210d794 --- /dev/null +++ b/benchmarks/wsim/media_19.wsim @@ -0,0 +1,10 @@ +0.VECS.1400-1500.0.0 +0.RCS.1000-1500.-1.0 +s.-2 +2.VCS2.50-350.0.1 +1.VCS1.1300-1400.0.1 +0.VECS.1400-1500.0.0 +0.RCS.100-300.-1.1 +2.RCS.1300-1500.0.0 +2.VCS2.100-300.-1.1 +1.VCS1.900-1400.0.1 diff --git a/benchmarks/wsim/media_load_balance_17i7.wsim b/benchmarks/wsim/media_load_balance_17i7.wsim new file mode 100644 index 00000000..25a69203 --- /dev/null +++ b/benchmarks/wsim/media_load_balance_17i7.wsim @@ -0,0 +1,7 @@ +1.VCS.3000.0.1 +1.RCS.1000.-1.0 +1.RCS.3700.0.0 +1.RCS.1000.-2.0 +1.VCS.2300.-2.0 +1.RCS.4700.-1.0 +1.VCS.600.-1.1 diff --git a/benchmarks/wsim/media_load_balance_19.wsim b/benchmarks/wsim/media_load_balance_19.wsim new file mode 100644 index 00000000..03890776 --- /dev/null +++ b/benchmarks/wsim/media_load_balance_19.wsim @@ -0,0 +1,10 @@ +0.VECS.1400-1500.0.0 +0.RCS.1000-1500.-1.0 +s.-2 +1.VCS.50-350.0.1 +1.VCS.1300-1400.0.1 +0.VECS.1400-1500.0.0 +0.RCS.100-300.-1.1 +1.RCS.1300-1500.0.0 +1.VCS.100-300.-1.1 +1.VCS.900-1400.0.1 diff --git a/benchmarks/wsim/vcs1.wsim b/benchmarks/wsim/vcs1.wsim new file mode 100644 index 00000000..9d3e682b --- /dev/null +++ b/benchmarks/wsim/vcs1.wsim @@ -0,0 +1,26 @@ +t.5 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 +0.VCS1.500-2000.0.0 diff --git a/benchmarks/wsim/vcs_balanced.wsim b/benchmarks/wsim/vcs_balanced.wsim new file mode 100644 index 00000000..e8958b8f --- /dev/null +++ b/benchmarks/wsim/vcs_balanced.wsim @@ -0,0 +1,26 @@ +q.5 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 +0.VCS.500-2000.0.0 |