Skip to content
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

[swss] Reduce Calls to SONiC Cfggen #5177

Merged

Conversation

tahmed-dev
Copy link
Contributor

Calls to sonic-cfggen is CPU expensive. This PR reduces calls to
sonic-cfggen to one call during startup when starting swss service.

singed-off-by: Tamer Ahmed [email protected]

- Why I did it
Reduce time required when invoking swss

- How I did it
Used template batch mode to batch together three calls into one call to sonic-cfggen

- How to verify it

root@str-s6000-acs-14:/# time ./docker-init-old.sh
VLAN=Vlan1000

real	0m8.323s
user	0m6.820s
sys	0m1.036s
root@str-s6000-acs-14:/# time ./docker-init-new.sh
VLAN=Vlan1000

real	0m1.931s
user	0m1.617s
sys	0m0.282s
root@str-s6000-acs-14:/# diff /etc/swss/config.d/switch.json.old /etc/swss/config.d/switch.json.new 
root@str-s6000-acs-14:/# diff /etc/swss/config.d/ipinip.json.old /etc/swss/config.d/ipinip.json.new
root@str-s6000-acs-14:/# diff /etc/swss/config.d/ports.json.old /etc/swss/config.d/ports.json.new
root@str-s6000-acs-14:/# diff /etc/swss/config.d/00-copp.config.json.old /etc/swss/config.d/00-copp.config.json.new 
root@str-s6000-acs-14:/# 

- Which release branch to backport (provide reason below if selected)

  • 201811
  • 201911
  • 202006

Calls to sonic-cfggen is CPU expensive. This PR reduces calls to
sonic-cfggen to one call during startup when starting swss service.

singed-off-by: Tamer Ahmed <[email protected]>
@tahmed-dev tahmed-dev marked this pull request as ready for review August 14, 2020 01:34
@tahmed-dev tahmed-dev merged commit 89f3206 into sonic-net:master Aug 17, 2020
abdosi pushed a commit that referenced this pull request Oct 7, 2020
Calls to sonic-cfggen is CPU expensive. This PR reduces calls to
sonic-cfggen to one call during startup when starting swss service.

singed-off-by: Tamer Ahmed <[email protected]>
lguohan pushed a commit that referenced this pull request Oct 30, 2020
Calls to sonic-cfggen is CPU expensive. This PR reduces calls to
sonic-cfggen to one call during startup when starting swss service.

singed-off-by: Tamer Ahmed <[email protected]>
abdosi pushed a commit that referenced this pull request Dec 4, 2020
Calls to sonic-cfggen is CPU expensive. This PR reduces calls to
sonic-cfggen to one call during startup when starting swss service.

singed-off-by: Tamer Ahmed <[email protected]>
abdosi pushed a commit that referenced this pull request Dec 22, 2020
Calls to sonic-cfggen is CPU expensive. This PR reduces calls to
sonic-cfggen to one call during startup when starting swss service.

singed-off-by: Tamer Ahmed <[email protected]>
santhosh-kt pushed a commit to santhosh-kt/sonic-buildimage that referenced this pull request Feb 25, 2021
Calls to sonic-cfggen is CPU expensive. This PR reduces calls to
sonic-cfggen to one call during startup when starting swss service.

singed-off-by: Tamer Ahmed <[email protected]>
StormLiangMS pushed a commit to StormLiangMS/sonic-buildimage that referenced this pull request Jul 18, 2022
We have internal change of using asic_type switch.json.2. After merge of public PR sonic-net#5177 we were not passing sonic_version.yml so asic_version is not set and in 201911 code Broadcom SAI retrun errors as Not Supported for Vxlan Attribute causing orchagent to terminate.

{% if "broadcom" not in asic_type %}
            "vxlan_port": "{{ vxlan_port }}",
            "vxlan_router_mac": "{{ vxlan_mac }}",
{% endif %}

Related work items: #3146150
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants