-
Notifications
You must be signed in to change notification settings - Fork 539
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[counters] Improve performance by polling only configured ports buffer queue/pg counters #2360
[counters] Improve performance by polling only configured ports buffer queue/pg counters #2360
Conversation
1c2c36e
to
a56fb77
Compare
/azpw run |
/AzurePipelines run |
Azure Pipelines successfully started running 1 pipeline(s). |
a56fb77
to
30c9089
Compare
/azpw run |
/AzurePipelines run |
Azure Pipelines successfully started running 1 pipeline(s). |
/azpw run |
/AzurePipelines run |
Azure Pipelines successfully started running 1 pipeline(s). |
@nazariig can you look into the test failures? |
30c9089
to
7917273
Compare
@yxieca looks like the tests are unstable because each run is totally different story |
/azpw run |
/AzurePipelines run |
Azure Pipelines successfully started running 1 pipeline(s). |
7917273
to
46487d5
Compare
The issue is observed with: Looks like the test has been executed twice:
Locally test passes:
|
@qiluo-msft / @yxieca i can't reproduce this issue in my environment. It is definitely not related to the current code changes. Can you please assist here? |
@prsunny do you have insight on vstest failures? |
@prabhataravind could be triggered by |
46487d5
to
f1de7ce
Compare
ffbfa93
to
4b8ded6
Compare
/azpw run |
/AzurePipelines run |
Azure Pipelines successfully started running 1 pipeline(s). |
4b8ded6
to
fcdde2c
Compare
Signed-off-by: Nazarii Hnydyn <[email protected]>
fcdde2c
to
c728f8c
Compare
@nazariig can you please check that it is cherrypickable for 202205? if not, please create a PR against 202205 |
@nazariig this change cannot be cherry-picked into 202205 cleanly. Can you raise new PR? |
Update sonic-swss submodule pointer to include the following: * Dynamic port configuration - add port buffer cfg to the port ref counter ([sonic-net#2194](sonic-net/sonic-swss#2194)) * tlm_teamd: Filter portchannel subinterface events from STATE_DB LAG_TABLE ([sonic-net#2408](sonic-net/sonic-swss#2408)) * [counters] Improve performance by polling only configured ports buffer queue/pg counters ([sonic-net#2360](sonic-net/sonic-swss#2360)) * added support for Xsight platform ([sonic-net#2426](sonic-net/sonic-swss#2426)) * [ci][asan] add DVS tests run with ASAN ([sonic-net#2363](sonic-net/sonic-swss#2363)) * Handle dual ToR neighbor miss scenario ([sonic-net#2151](sonic-net/sonic-swss#2151)) * Upstream new development on p4orch ([sonic-net#2237](sonic-net/sonic-swss#2237)) * [lgtm] Fix dependency ([sonic-net#2419](sonic-net/sonic-swss#2419)) * [muxorch] Returning true if nbr in skip_neighbor_ in isNeighborActive() ([sonic-net#2415](sonic-net/sonic-swss#2415)) * [macsec]: Set MTU for MACsec ([sonic-net#2398](sonic-net/sonic-swss#2398)) * Delete Invalid if condition in intfsorch.cpp ([sonic-net#2411](sonic-net/sonic-swss#2411)) Signed-off-by: dprital <[email protected]>
…ured ports buffer queue/pg counters (sonic-net#2360)" (sonic-net#2458)" This reverts commit f0f1eb4.
…ured ports buffer queue/pg counters (sonic-net#2360)" (sonic-net#2458)" This reverts commit f0f1eb4.
…ured ports buffer queue/pg counters (sonic-net#2360)" (sonic-net#2458)" This reverts commit f0f1eb4.
…ured ports buffer queue/pg counters (sonic-net#2360)" (sonic-net#2458)" This reverts commit f0f1eb4.
…ured ports buffer queue/pg counters (sonic-net#2360)" (sonic-net#2458)" This reverts commit f0f1eb4.
…ured ports buffer queue/pg counters (sonic-net#2360)" (sonic-net#2458)" This reverts commit f0f1eb4.
Signed-off-by: Nazarii Hnydyn [email protected]
Propagating #2143 with resolved merge conflicts
Depends on: sonic-net/sonic-utilities#2239
What I did
Currently in SONiC all ports queue and pg counters are created by default with the max possible amount of counters.
This feature change this behavior to poll only configured counters provided by the config DB BUFFER_PG and BUFFER_QUEUE tables.
If no tables are present in the DB, no counters will be created for ports.
Filter the unwanted queues/pgs returned by SAI API calls and skip the creation of these queue/pg counters.
Also allow creating/removing counters on runtime if buffer PG/Queue is configured or removed.
Why I did it
Improve performance by filtering unconfigured queue/pg counters on init.
How I verified it
Check after enabling the counters, if configured counters created in Counters DB according to the configurations.
Add/Remove buffer PG/Queue configurations and observe the corresponding counters created/removed accordingly.
New UT added to verify this flow.
Details if related