diff options
author | Tibor Frank <tifrank@cisco.com> | 2018-01-10 15:48:25 +0100 |
---|---|---|
committer | Jan Gelety <jgelety@cisco.com> | 2018-01-16 09:06:34 +0000 |
commit | 54ad6efd342695d0a7dad5380cc989a8d846f518 (patch) | |
tree | 96a4f2f0cdc4696302113d89c955250e5ecfea76 /resources/libraries/python | |
parent | 5f153c5987d9774dc67063cb4aaff352ac785ba3 (diff) |
CSIT-898: WRK improvments
Change-Id: I92aafaaedce5891727a983b8cf024a0fb0db7524
Signed-off-by: Tibor Frank <tifrank@cisco.com>
Diffstat (limited to 'resources/libraries/python')
-rw-r--r-- | resources/libraries/python/tcp.py | 48 |
1 files changed, 47 insertions, 1 deletions
diff --git a/resources/libraries/python/tcp.py b/resources/libraries/python/tcp.py index 5ae1ebf929..ecd6210f69 100644 --- a/resources/libraries/python/tcp.py +++ b/resources/libraries/python/tcp.py @@ -33,4 +33,50 @@ class TCPUtils(object): """ with VatTerminal(node) as vat: - vat.vat_terminal_exec_cmd_from_template("start_http_server.vat") + vat.vat_terminal_exec_cmd_from_template( + "start_http_server.vat") + + @staticmethod + def start_http_server_params(node, prealloc_fifos, fifo_size, + private_segment_size): + """Start HTTP server on the given node. + + test http server static prealloc-fifos <N> fifo-size <size in kB> + private-segment-size <seg_size expressed as number + unit, e.g. 100m> + + Where N is the max number of connections you expect to handle at one + time and <size> should be small if you test for CPS and exchange few + bytes, say 4, if each connection just exchanges few packets. Or it + should be much larger, up to 1024/4096 (i.e. 1-4MB) if you have only + one connection and exchange a lot of packets, i.e., when you test for + RPS. If you need to allocate lots of FIFOs, so you test for CPS, make + private-segment-size something like 4g. + + Example: + + For CPS + test http server static prealloc-fifos 10000 fifo-size 64 + private-segment-size 4000m + + For RPS + test http server static prealloc-fifos 500000 fifo-size 4 + test http server static prealloc-fifos 500000 fifo-size 4 + private-segment-size 4000m + + :param node: Node to start HTTP server on. + :param prealloc_fifos: Max number of connections you expect to handle at + one time. + :param fifo_size: FIFO size in kB. + :param private_segment_size: Private segment size. Number + unit. + :type node: dict + :type prealloc_fifos: str + :type fifo_size: str + :type private_segment_size: str + """ + + with VatTerminal(node, json_param=False) as vat: + vat.vat_terminal_exec_cmd_from_template( + "start_http_server_params.vat", + prealloc_fifos=prealloc_fifos, + fifo_size=fifo_size, + private_segment_size=private_segment_size) |