aboutsummaryrefslogtreecommitdiffstats
path: root/resources/libraries/python
AgeCommit message (Collapse)AuthorFilesLines
2021-08-20Scale tests: Use exec commands and VAT executorVratko Polak1-34/+74
This is the same appoach as in ipsec tests. This is the fastest way to fix scale tests. - Some argument combinations are not supported, e.g. multipath=False. + Make multipath=True default. - Devicetest using local=True only works with PAPI. + But that was true already in rls2106, so no need to fix here. + Add two more formats to NetworkIncrement. + Check address is aligned, unless call side disables that. + Only one keyword for two devicetests disables the check. + Papi history condition to print first and last. + Minor docstring edits. Change-Id: I32d24e2f821b412b5841a50d2f87e1c86345b1aa Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-08-20Improve NetworkIncrementVratko Polak2-22/+38
+ Set 1 as default value for increment. + Update IPsecUtil. + Tolerate address with host bits set when incrementing. + Call sites can check initial value on their own. + Support multiple ways of converting to string. - Only the previous "dash" format is supported here. + Update docstrings. Change-Id: I0c71a6327cca6a319715b3fcfbbee800cac14287 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-08-19vpp_device: Multiple NICs (suitegen)pmikus2-0/+79
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I81958fbf6ef240d53a0fb8708ca882baf02f606c
2021-08-02FIX: init_interface driver and sr-iovJuraj Linkeš2-49/+28
Add checks for not unbinding a driver that is not bound and not trying to remove VFs from interfaces not supporting SR-IOV. Change-Id: Iae7ce37aabeadbb541fe9eac8b83b4ee18d028e6 Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-08-02FIX: init interfaces for rdma-core driverJuraj Linkeš1-0/+4
We're only initializing interfaces for avf and af_xdp VPP drivers. This causes issues for the rdma-core driver when the underlying mlnx kernel driver is not bound. Fix this so that all interfaces are properly bound to the kernel driver required by rdma-core. Change-Id: I204309a9bb61b56b96497a287178f0b1efe2f362 Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-07-28CSIT-1782: 4c AVF tests are failingpmikus1-2/+13
+ Implement temporary ugly workaround as I cannot do driver upgrade now after discussions with PTL. Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I400e3b61bd831b9c9820b1fab8852118f2d48f0e
2021-07-28IPsec: add nth matching SPD entry outbound TCsJuraj Linkeš3-102/+369
Add testcases with plain ipv4 forwarding with 1, 10, 100 and 1000 SPD entries on outbound traffic in both directions both directions. Only match the last SPD entry and process others before the matching entry. Add testcases only without flow cache optimization. Refactor the Python functions that add SPD entries: - Unify the args in functions that add one and multiple entries. - For multiple entries, add the ability to pass an object that will handle how values in each iteration (i.e. for each entry) are modified. Change-Id: I061922eec6acc75a4e115202c07e72d89bf1f4d3 Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-07-22Framework: increase framework setup timeoutJuraj Linkeš1-1/+1
With increasing number of tests the amount of time needed to extract the framework also increases. Double the timeout to leave some headroom as well. Change-Id: Ia012272a9a33f2d5d346277cc982e10603a4d3db Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-07-21Perf: Enable af_xdp for Intel x500 seriespmikus1-2/+3
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: If45e592aeade12fe643791b431adc860a745be3d
2021-07-21Perf: Enable af_xdp for Intel x500 seriespmikus1-2/+2
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I331fe9134c62594189ca231349ab4c5ba43b51e5
2021-07-12IETF: Update MLRsearch draftVratko Polak3-11/+20
Change-Id: I591b76b72868697242cfbece8f569dc82128ed85 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-07-06Telemetry: Add node infopmikus2-7/+31
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I428bf2628f5d6b87d335de415a82d6e94867d8c0
2021-06-21FrameworkSetup: fix timeout in Arm setupJuraj Linkeš1-1/+1
Framework extraction in Arm jobs is taking longer than the current timeout. Increase the timeout to fix this. Change-Id: Iaddbbe9690eabbed47b19d5264a4f4502e5ed948 Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-06-17Core: Rework CPU allocationpmikus4-63/+169
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I6826add7b3032041632c3952c45a3c64409400b0
2021-06-16Line length: Fix recent mergesVratko Polak2-2/+2
Not fixing .rst, .md, .yaml, conf.py, .vat, and so on. Change-Id: Icc585d6dbebc8eb5c483b10326302571e94c614d Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-06-10FIX: Pylint reducepmikus54-91/+86
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I909942dbb920df7f0fe15c0c92cda92c3cd8d8ad
2021-06-10Add gtpu sw performance test casesxinfeng zhao2-1/+45
Signed-off-by: xinfeng zhao <xinfengx.zhao@intel.com> Reviewed-by: Yulong Pei <yulong.pei@intel.com> Change-Id: Ibe4420529192559a3cdbb84e0a67859750a9e0d5
2021-06-10Dpdk in VM: Increase num_mbufsVratko Polak3-5/+5
Since switching to rxq ratio 1:1, the previous value was not enough for 4c vhost tests. + Set the 1:1 rxq ratio also for DPDK (outside vhost) tests. - Still not sure why those tests were not failing. + Set the 1:1 rxq ratio also for VPP container tests. Ticket: CSIT-1783 Change-Id: Id9d136a638eb212a8105a6288e7847f3c35fefb0 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-06-04FIX: af_xdp L2 data pathspmikus1-1/+28
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: Ic5bc714b56c8bbd6884264a566eb8554a9735cba
2021-06-04Performance: Add AF_XDP testspmikus5-30/+295
- enabling for fortville, columbiaville - enabling experimental for mlx Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I1b7ceb54769f4a0089ac7309350499e60c5cca0a
2021-06-02Infra: Decommission 3n-hsw - NICspmikus1-19/+1
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I5bbb573fb75d0ee7b5e9b21591e4d6ff48df917e
2021-05-28Framework: Telemetry retakepmikus3-11/+72
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I2f019a083916aec9f7816266f6ad5b92dcc31fa0
2021-05-26Add dpdk max-simd-bitwidth configuration.xinfeng zhao1-1/+17
Signed-off-by: xinfeng zhao <xinfengx.zhao@intel.com> Reviewed-by: Yulong Pei <yulong.pei@intel.com> Change-Id: Ie7b9912eacdb60689012936580d3d774f7e470ae
2021-05-26rxq_ratio default value changed to 1viliam.luc1-0/+13
Change-Id: I0c973ceffc13f4f3c5f959d56cb0890b87091a82 Signed-off-by: Viliam Luc <viliam.luc@pantheon.tech>
2021-05-20hoststack perf: iperf3 udp hoststack performance tests.Dave Wallace1-0/+5
Change-Id: Ie2e735971934d8aeac2d436505c120f09ce67ac7 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2021-05-20perf: add TCP Nginx+LDPRELOAD suitesxizhanx9-7/+634
1. Suite steup add download nginx 2. Add nginx-1.14.2/1.15.0 ldp test suite 3. Add NginxUtils,NginxConfigGenerator method 4. Taskset the PID of nginx to the unused cores in VPP and these cores are under NIC's NUMA ID 5. cleanup add Kill Processes - nohup Signed-off-by: xizhanx <xix.zhang@intel.com> Change-Id: Idbf0e4ec3bf63e88281a8e3e34f52e00a6801c85 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2021-05-12PAPI stats: Use single dumpVratko Polak1-0/+2
There is only one call site (VppCounters.vpp_show_runtime) which uses a single path ("^/sys/node"), so we do not need to split the replies anymore. This simplifies investigating bugs related to VPP stats. Change-Id: Idfc029c795cd78cf6d41c2f461f7844aed53410d Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-04-21FrameworkSetup: increase timeoutJuraj Linkeš1-1/+1
We're hitting a SSHTimeout exception when copying the framework, increase the timeout to fix this. Change-Id: Ic72b9b8b96290c3f0e705d79742bbd39b0bf1e71 Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-04-19DPDK bumppmikus3-7/+4
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I6edd980cb72111a008ae7fa19e1a4df279febdb2
2021-04-07SetupFramework: Log env activation outputsVratko Polak1-3/+11
Useful for verifying how much is SUT ready for requirements.txt content. Change-Id: I1e8443f2f9391d646e79a451a88df961845700e4 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-04-01IPsec: add 4, 40 and 400 tunnel policy testsJuraj Linkeš1-0/+2
Add more granularity test policy tests. Mirror the number of tunnels in other IPsec tests under 1000 tunnels. Change-Id: I9bde7447a5d809bab05db132bf6cb524e97e19b3 Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-03-31TrafficGenerator: Less logging of unsentVratko Polak1-1/+2
When a trial has explicit stop instead of duration (e.g. for show run), the computation of unsent packets is wrong, so simply do not log the result. Change-Id: I7722c85b156f92e456eda212104abdb216e78b04 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-03-31IPsec: add 2n crypto policy udir perf testsJuraj Linkeš1-35/+65
Add 2n1l udir 1 and 1000 tunnel sw policy IPsec tests to mirror the existing 3n tests. Add static ip neighbor mac entries which can't be retrieved in 2node setups. Change-Id: I13dd557cbeed7f907fa9b4c21e4e245d48916513 Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-03-31Device: Add stats test with AVFVratko Polak1-1/+1
+ Extract the stats keyword into a library. Change-Id: Icfaaa32c2a97d479ba0339acf34b865006949a89 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-03-26STL traffic: Use the sleep+stop logicVratko Polak2-7/+37
+ PPS limit for AWS set to 1.2 Mpps. + The logic is very similar to that one in ASTF driver. + This helps for testbeds with high duration stretching (e.g. AWS). + Difference: No transaction scale, and we deal with floats. + Update loss counting to count unsent packets as lost. + Also count "unsent" transactions for other transaction types. + If nonzero, log the number of unsent packets/transactions. + Make STL and ASTF time overhead constant (called delay) configurable. + Subtract delay from approximated_duration, also for ASTF. Change-Id: I6ee6aa6fba4f110ba1636e1b0ff76cac64383e33 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-03-26Parametrize T-Rex rx/tx descriptors countTomas Alexy2-0/+23
Additional configuration can provide performance boosts when running in virtual environments If set to 0, uses default DPDK value By tuning this value it's also possible to run T-Rex 2.88 with ENA NICs on AWS Signed-off-by: Tomas Alexy <tomas.alexy@pantheon.tech> Change-Id: I43c86ea1d9aa854a1087f07fe544ac77a5b80397
2021-03-24FrameworkSetup: fix timeout in Arm setupJuraj Linkeš1-1/+1
Framework extraction in Arm jobs is taking longer than the current timeout. Increase the timeout to fix this. Change-Id: I436d3131fcd7c25fd1f9607095712b4a8aa2d28c Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-03-24FrameworkSetup: catch all exceptions in threadsJuraj Linkeš1-15/+32
Any uncaught exception in a thread running setup_node or cleanup_node will prevent the result of that thread's execution from being passed to the main thread. Since the main thread assumes there will be a result for each thread, this leads to false positives. Catch all exceptions in those background threads to fix this. Change-Id: I64013dfc671e576290c8376a58c754ed21b9ba3e Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-03-23Geneve: Re-write the creation of tunnels in pythonTibor Frank1-1/+71
Change-Id: I8b20134ad10abd9c021270b98c3110bd186946d5 Signed-off-by: Tibor Frank <tifrank@cisco.com>
2021-03-22MLRsearch: Support other than just two ratiosVratko Polak11-631/+876
+ Change some method names and argument types: + Do not mention NDR and PDR, except as examples. + Return list of ReceiveRateInterval instead of NdrPdrResult. + The resulting intervals can be degenerate when hitting min/max rate. + Rename quantity name parts from "fraction" to "ratio". + Intervals are no longer tracked for each target ratio. + They are found dynamically from known results. + Add effective_loss_ratio field to avoid loss inversion effects. + Move some functions to separate files. + Bound search logic moved to MeasurementDatabase.py + ProgressState moved to its file. + WidthArithmetics.py holds small computation functions. + Use parameter expansion_coefficient instead of "doublings". + Do uneven bisect to save time when width is not power of two times goal. + Timeout now correctly tracked for the whole search, not just the current phase. + Make logging (debug) function pluggable. + Added debug log messages for initial phase. + Do not mark as subclass if contructor signature differs. + Avoid re-measure on scale-limited (ASTF) profiles. + Remove outdated comments. + Bump copyright years. Change-Id: I93f693b4f186f59030ee5ac21b78acc890109813 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-03-22FIX: LXC imagepmikus1-2/+2
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I73f7a1095b7cee52fade8a31285e405727548394
2021-03-19FrameworkSetup: Detect socket.timeoutVratko Polak1-2/+3
Otherwise setup "passes" leading to confusing errors later. Example: https://logs.fd.io/production/vex-yul-rot-jenkins-1/csit-vpp-perf-mrr-daily-master-2n-skx/1251/archives/log.html.gz#s1-s1-s1-k1-k2 Change-Id: I56b14e2eb75679c7c10b00b3f9c6bf07902e5166 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-03-18fix two issuesYulong Pei1-1/+1
1. wrong symbol link path for MLRsearch. 2. self._received force to integer in _parse_traffic_results function. Signed-off-by: Yulong Pei <yulong.pei@intel.com> Change-Id: Ie86a549b222d28b8cecc889807044476975dffb1
2021-03-17IPsec: fix SA policy cliJuraj Linkeš1-2/+2
The tunnel specification in "ipsec sa add" has changed. Update the cli the reflect this. Change-Id: I11d788798419b96b1289c53052eedb9767252df6 Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
2021-03-16Infra: Upgrade csit-dut imagepmikus1-2/+2
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I0341a1564ba510acf46bda3e24225209abef2f82
2021-03-16Perf: Bump T-Rex to 2.88pmikus1-2/+2
+ Mellanox 4.6 is not for Ubuntu 20.04 + Mellanox for ubuntu 20.04 is 4.9+ + T-Rex 2.86 is not for Mellanox 4.6+ + T-Rex for Mellanox 5.2 is 2.88+ ================================== = Bump Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I902dfc2a43e6718b385e89f31a34260e09d61bd3
2021-03-16API options: Fix case when no options are presentVratko Polak1-2/+2
In that case we want to pass by returning an empty dict, as docstring already describes. Before this, the code failed when checking for included version. Change-Id: Ia0d6b81a64ad0e7027ac7daf15c72ace1f6982ce Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-03-09API: Track options and versionVratko Polak1-9/+55
If options are not present in .api.json file (e.g. old PVP build), use an empty dict. If a message is used in CSIT, check its options. Tolerate vat_help, but print warning for others. This aims to discover in-progress and obsolete APIs. If .api.json version is not detected, or starts with "0.", add a "version" item to options, so they get reported. Change-Id: Ic5a9423157728a58f7ad306c7bd9eaef3bd92488 Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-02-22Ipsec: Always generate ikeyVratko Polak1-43/+67
Some tests use a crypto algorithm with no integrity algorithm. Generate empty binary strings as fake integrity keys to keep return values of low level methods consistent. + Add return_keys argument to avoid returning long lists. + Improve various docstrings. Change-Id: Idae1877bdde32d194ce4e3bb3053c8dba39d377a Signed-off-by: Vratko Polak <vrpolak@cisco.com>
2021-02-19Add test suites for crypto sw scheduler engineYulong Pei4-4/+103
This patch is to add test suites for vpp plugin crypto_sw_scheduler, IPsec sync mode is to do crypto and packet forward work in same worker cores, crypto_sw_scheduler can schedule crypto work to other async crypto cores to improve whole crypto processing capability. This test suites configure fixed 1 rx queues per port, then measure IPsec performance with 1, 2, 3 crypto cores. This patchset include 1, 2, 4, 8 ipsec tunnels test cases. +Vratko help to change to count total physical cores instead of previous only count crypto cores in test cases. Change-Id: I0e67182e3d13273890a23703d838101900e25126 Signed-off-by: Yulong Pei <yulong.pei@intel.com> Signed-off-by: Vratko Polak <vrpolak@cisco.com> Signed-off-by: pmikus <pmikus@cisco.com>