summaryrefslogtreecommitdiffstats
path: root/it/jvpp-benchmark/asciidoc/Readme.adoc
blob: 8c787d4ac0f2a485cf01fa62d8342ed06e6afa8d (plain)
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
= jvpp-benchmark

Provides JMH based benchmarks JVpp (Java API for VPP).

== AclUpdateBenchmark

Creates ACL of size aclSize using acl_add_replace,
then assigns it to loopback interface using acl_interface_set_acl_list.

Then ACL is updated synchronously using acl_add_replace.
By default 20x2s warmup and 100x2s measurment iterations
are performed.

VPP is restarted after each iteration.

Each invocation of acl_add_replace uses ACL from precomputed
set of ACLs of size aclSetSize.
ACLs from the set are used in round-robin fashion.

Compile:
[source,shell]
---
cd $HC2VPP_ROOT/it/jvpp-benchmark
mvn clean install
---

Run with:
[source,shell]
---
sudo java -jar ./target/jvpp-benchmark-exec.jar
---

To specify aclSize (default=100), use:
[source,shell]
---
sudo java -jar ./target/jvpp-benchmark-exec.jar -p aclSize=1000
---

To specify aclSetSize (default=100), use:
[source,shell]
---
sudo java -jar ./target/jvpp-benchmark-exec.jar -p aclSetSize=1000
---

To test interface in bridged (L2) / routed (L3) mode (default=L3), use:
[source,shell]
---
sudo java -jar ./target/jvpp-benchmark-exec.jar -p mode=L2
---

To see more options, use
[source,shell]
---
java -jar ./target/jvpp-benchmark-exec.jar -h
---