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

Heap-ify ReadHandler pool on the Server #13066

Merged
merged 12 commits into from
Jan 26, 2022

Conversation

mrjerryjohns
Copy link
Contributor

This is part 1/N to slowly heap-ify pools in the IM.

This PR specifically heap-ifies the ReadHandler pool on the server. To achieve that, it converts the custom-managed array of ReadHandlers to an ObjectPool<>. This ensures that on platforms that have heap, that will allocate out of
that when space runs out.

It also fixes a number of other notable issues:

  • Correctly moves to a constructor/destructor based pattern for the initialization/teardown of the ReadHandler
  • Aligns with the terminology of Close and Abort for referring to the graceful/abrupt shutdown of these objects.
  • Makes Abort a private member that is not meant to be utilized by applications, since in all cases today, applications only really emit path-specific errors and never really need to teardown an interaction forcefully at any time on the server.
  • Fixes up ReadClient::Callback::OnError to deliver IM status codes as well (instead of just converting it lossily to a CHIP_ERROR). This permits for correctly trapping resource exhaustion errors (amongst others) at the application.
  • Adds some utility methods to iterate over pool items, that is needed by the reporting engine.

Tests:

  • Validated using the REPL
  • Wrote a fairly comprehensive E2E unit test that validates the heap implementation as well as the ability to return back resource exhaustion errors.

This amongst other things, converts the custom-managed array of ReadHandlers to a ObjectPool<>.
This ensures that on platforms that have heap, that will allocate out of
that when space runs out.

This removes the 4 subscription limit right now on capable platforms
that support heap.

It also does a number of other side fixes needed to make the
above work.

Tests:
- Validated using the REPL
- Wrote a fairly comprehensive E2E unit test that validates the heap
  implementation as well as the ability to return back resource
  exhaustion errors.
@github-actions
Copy link

github-actions bot commented Jan 24, 2022

PR #13066: Size comparison from e25a501 to 308e2d5

Increases above 0.2%:

platform target config section e25a501 308e2d5 change % change
linux thermostat-no-ble arm64 (read/write) 145697 146337 640 0.4
.bss 64785 65345 560 0.9
.got 4064 4080 16 0.4
Increases (27 builds for cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section e25a501 308e2d5 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 574390 574622 232 0.0
.app_xip_area 479404 479604 200 0.0
.bss 77724 77756 32 0.0
efr32 lighting-app BRD4161A (read only) 835916 836428 512 0.1
(read/write) 127244 127276 32 0.0
.bss 125344 125376 32 0.0
.text 835908 836420 512 0.1
BRD4161A+rpc (read only) 823336 823832 496 0.1
(read/write) 143904 143936 32 0.0
.bss 141904 141936 32 0.0
.text 823328 823824 496 0.1
window-app BRD4161A (read only) 806476 806988 512 0.1
(read/write) 125812 125844 32 0.0
.bss 123960 123992 32 0.0
.text 806468 806980 512 0.1
esp32 all-clusters-app c3devkit (read only) 918984 919126 142 0.0
(read/write) 1383434 1383546 112 0.0
.dram0.bss 70720 70752 32 0.0
.flash.rodata 179344 179424 80 0.0
.flash.text 918984 919126 142 0.0
m5stack (read only) 967431 967583 152 0.0
(read/write) 449852 449956 104 0.0
.dram0.bss 75184 75216 32 0.0
.flash.rodata 208508 208580 72 0.0
.flash.text 962047 962199 152 0.0
k32w light k32w061+release (read/write) 660588 660824 236 0.0
.bss 76608 76640 32 0.0
.text 576312 576516 204 0.0
lock k32w061+release (read/write) 661312 661536 224 0.0
.bss 76848 76880 32 0.0
.text 576776 576968 192 0.0
linux chip-tool-ipv6only arm64 (read only) 8536964 8542228 5264 0.1
.got 69056 69080 24 0.0
.rodata 436908 436924 16 0.0
.text 7261028 7266292 5264 0.1
thermostat-no-ble arm64 (read only) 2051916 2054396 2480 0.1
(read/write) 145697 146337 640 0.4
.bss 64785 65345 560 0.9
.data.rel.ro 72984 73048 64 0.1
.got 4064 4080 16 0.4
.rodata 130700 130732 32 0.0
.text 1706720 1708976 2256 0.1
mbed all-clusters-app CY8CPROTO_062_4343W+release (read/write) 2352184 2352240 56 0.0
.bss 189428 189460 32 0.0
.text 1314760 1314816 56 0.0
lighting-app CY8CPROTO_062_4343W+release (read/write) 2334408 2334464 56 0.0
.bss 180960 180992 32 0.0
.text 1297008 1297064 56 0.0
lock-app CY8CPROTO_062_4343W+release (read/write) 2304760 2304816 56 0.0
.bss 179960 179992 32 0.0
.text 1267360 1267416 56 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 942879 943099 220 0.0
bss 119044 119076 32 0.0
rodata 108916 108960 44 0.0
text 637312 637456 144 0.0
nrf52840dk_nrf52840+rpc (read/write) 928347 928563 216 0.0
bss 116088 116120 32 0.0
rodata 101368 101408 40 0.0
text 632708 632852 144 0.0
nrf52840dongle_nrf52840 (read/write) 993527 993743 216 0.0
bss 121884 121916 32 0.0
rodata 113672 113712 40 0.0
text 669512 669656 144 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 852706 852922 216 0.0
bss 115828 115860 32 0.0
rodata 102092 102132 40 0.0
text 554232 554376 144 0.0
lock-app nrf52840dk_nrf52840 (read/write) 912223 912443 220 0.0
bss 118196 118228 32 0.0
rodata 103884 103928 44 0.0
text 612756 612896 140 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 822294 822510 216 0.0
bss 115016 115048 32 0.0
rodata 97112 97152 40 0.0
text 529712 529852 140 0.0
pump-app nrf52840dk_nrf52840 (read/write) 915083 915299 216 0.0
bss 117960 117992 32 0.0
rodata 104248 104288 40 0.0
text 615404 615544 140 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 910267 910483 216 0.0
bss 117984 118016 32 0.0
rodata 103400 103440 40 0.0
text 611428 611568 140 0.0
p6 all-clusters-app default (read/write) 2410664 2411160 496 0.0
.bss 117772 117804 32 0.0
.text 1368928 1369424 496 0.0
light-app default (read/write) 2330736 2331248 512 0.0
.bss 105544 105576 32 0.0
.text 1289000 1289512 512 0.0
lock-app default (read/write) 2299752 2300264 512 0.0
.bss 104392 104424 32 0.0
.text 1258016 1258528 512 0.0
qpg lighting-app qpg6105+debug (read only) 567476 567652 176 0.0
.bss 89688 89720 32 0.0
.text 562156 562332 176 0.0
lock-app qpg6105+debug (read only) 515904 516072 168 0.0
.bss 88256 88288 32 0.0
.text 510584 510752 168 0.0
telink lighting-app tlsr9518adk80d (read/write) 841718 841838 120 0.0
bss 87492 87524 32 0.0
text 588346 588396 50 0.0
Decreases (1 build for linux)
platform target config section e25a501 308e2d5 change % change
linux chip-tool-ipv6only arm64 (read/write) 391009 390097 -912 -0.2
.bss 56049 55137 -912 -1.6
.data.rel.ro 261032 261000 -32 -0.0
Full report (33 builds for cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section e25a501 308e2d5 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 574390 574622 232 0.0
.app_xip_area 479404 479604 200 0.0
.bss 77724 77756 32 0.0
.data 604 604 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
efr32 lighting-app BRD4161A (read only) 835916 836428 512 0.1
(read/write) 127244 127276 32 0.0
.bss 125344 125376 32 0.0
.data 1900 1900 0 0.0
.text 835908 836420 512 0.1
BRD4161A+rpc (read only) 823336 823832 496 0.1
(read/write) 143904 143936 32 0.0
.bss 141904 141936 32 0.0
.data 2000 2000 0 0.0
.text 823328 823824 496 0.1
window-app BRD4161A (read only) 806476 806988 512 0.1
(read/write) 125812 125844 32 0.0
.bss 123960 123992 32 0.0
.data 1852 1852 0 0.0
.text 806468 806980 512 0.1
esp32 all-clusters-app c3devkit (read only) 918984 919126 142 0.0
(read/write) 1383434 1383546 112 0.0
.dram0.bss 70720 70752 32 0.0
.dram0.data 14252 14252 0 0.0
.flash.rodata 179344 179424 80 0.0
.flash.text 918984 919126 142 0.0
.iram0.text 62056 62056 0 0.0
m5stack (read only) 967431 967583 152 0.0
(read/write) 449852 449956 104 0.0
.dram0.bss 75184 75216 32 0.0
.dram0.data 34032 34032 0 0.0
.flash.rodata 208508 208580 72 0.0
.flash.text 962047 962199 152 0.0
.iram0.text 123399 123399 0 0.0
k32w light k32w061+release (read/write) 660588 660824 236 0.0
.bss 76608 76640 32 0.0
.data 1868 1868 0 0.0
.text 576312 576516 204 0.0
lock k32w061+release (read/write) 661312 661536 224 0.0
.bss 76848 76880 32 0.0
.data 1888 1888 0 0.0
.text 576776 576968 192 0.0
linux chip-tool-ipv6only arm64 (read only) 8536964 8542228 5264 0.1
(read/write) 391009 390097 -912 -0.2
.bss 56049 55137 -912 -1.6
.data 1128 1128 0 0.0
.data.rel.ro 261032 261000 -32 -0.0
.dynamic 560 560 0 0.0
.got 69056 69080 24 0.0
.init 24 24 0 0.0
.init_array 200 200 0 0.0
.rodata 436908 436924 16 0.0
.text 7261028 7266292 5264 0.1
thermostat-no-ble arm64 (read only) 2051916 2054396 2480 0.1
(read/write) 145697 146337 640 0.4
.bss 64785 65345 560 0.9
.data 904 904 0 0.0
.data.rel.ro 72984 73048 64 0.1
.dynamic 560 560 0 0.0
.got 4064 4080 16 0.4
.init 24 24 0 0.0
.init_array 320 320 0 0.0
.rodata 130700 130732 32 0.0
.text 1706720 1708976 2256 0.1
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2352184 2352240 56 0.0
.bss 189428 189460 32 0.0
.data 5304 5304 0 0.0
.text 1314760 1314816 56 0.0
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2334408 2334464 56 0.0
.bss 180960 180992 32 0.0
.data 5584 5584 0 0.0
.text 1297008 1297064 56 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2304760 2304816 56 0.0
.bss 179960 179992 32 0.0
.data 5560 5560 0 0.0
.text 1267360 1267416 56 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139712 1139712 0 0.0
.bss 11756 11756 0 0.0
.data 4368 4368 0 0.0
.text 103096 103096 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2054256 2054256 0 0.0
.bss 156876 156876 0 0.0
.data 4864 4864 0 0.0
.text 1016856 1016856 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 942879 943099 220 0.0
bss 119044 119076 32 0.0
rodata 108916 108960 44 0.0
text 637312 637456 144 0.0
nrf52840dk_nrf52840+rpc (read/write) 928347 928563 216 0.0
bss 116088 116120 32 0.0
rodata 101368 101408 40 0.0
text 632708 632852 144 0.0
nrf52840dongle_nrf52840 (read/write) 993527 993743 216 0.0
bss 121884 121916 32 0.0
rodata 113672 113712 40 0.0
text 669512 669656 144 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 852706 852922 216 0.0
bss 115828 115860 32 0.0
rodata 102092 102132 40 0.0
text 554232 554376 144 0.0
lock-app nrf52840dk_nrf52840 (read/write) 912223 912443 220 0.0
bss 118196 118228 32 0.0
rodata 103884 103928 44 0.0
text 612756 612896 140 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 822294 822510 216 0.0
bss 115016 115048 32 0.0
rodata 97112 97152 40 0.0
text 529712 529852 140 0.0
pigweed-app nrf52840dk_nrf52840 (read/write) 541835 541835 0 0.0
bss 52588 52588 0 0.0
rodata 50104 50104 0 0.0
text 376940 376940 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 915083 915299 216 0.0
bss 117960 117992 32 0.0
rodata 104248 104288 40 0.0
text 615404 615544 140 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 910267 910483 216 0.0
bss 117984 118016 32 0.0
rodata 103400 103440 40 0.0
text 611428 611568 140 0.0
shell nrf52840dk_nrf52840 (read/write) 798527 798527 0 0.0
bss 109776 109776 0 0.0
rodata 78324 78324 0 0.0
text 533928 533928 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 711342 711342 0 0.0
bss 107664 107664 0 0.0
rodata 72624 72624 0 0.0
text 451608 451608 0 0.0
p6 all-clusters-app default (read/write) 2410664 2411160 496 0.0
.bss 117772 117804 32 0.0
.data 2584 2584 0 0.0
.text 1368928 1369424 496 0.0
light-app default (read/write) 2330736 2331248 512 0.0
.bss 105544 105576 32 0.0
.data 2408 2408 0 0.0
.text 1289000 1289512 512 0.0
lock-app default (read/write) 2299752 2300264 512 0.0
.bss 104392 104424 32 0.0
.data 2360 2360 0 0.0
.text 1258016 1258528 512 0.0
qpg lighting-app qpg6105+debug (read only) 567476 567652 176 0.0
(read/write) 146940 146940 0 0.0
.bss 89688 89720 32 0.0
.data 1064 1064 0 0.0
.text 562156 562332 176 0.0
lock-app qpg6105+debug (read only) 515904 516072 168 0.0
(read/write) 146936 146936 0 0.0
.bss 88256 88288 32 0.0
.data 988 988 0 0.0
.text 510584 510752 168 0.0
persistent-storage-app qpg6105+debug (read only) 107140 107140 0 0.0
(read/write) 146940 146940 0 0.0
.bss 38504 38504 0 0.0
.data 288 288 0 0.0
.text 101820 101820 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 841718 841838 120 0.0
bss 87492 87524 32 0.0
noinit 37160 37160 0 0.0
text 588346 588396 50 0.0

@github-actions
Copy link

github-actions bot commented Jan 25, 2022

PR #13066: Size comparison from bb2838f to 939cada

Increases above 0.2%:

platform target config section bb2838f 939cada change % change
linux thermostat-no-ble arm64 (read/write) 145953 146593 640 0.4
.bss 64897 65457 560 0.9
.got 4056 4072 16 0.4
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 942107 945175 3068 0.3
text 637108 640008 2900 0.5
nrf52840dk_nrf52840+rpc (read/write) 927619 930687 3068 0.3
text 632504 635404 2900 0.5
nrf52840dongle_nrf52840 (read/write) 992783 995851 3068 0.3
text 669308 672208 2900 0.4
lock-app nrf52840dk_nrf52840 (read/write) 912643 915711 3068 0.3
text 612660 615556 2896 0.5
pump-app nrf52840dk_nrf52840 (read/write) 915283 918351 3068 0.3
text 615136 618032 2896 0.5
pump-controller-app nrf52840dk_nrf52840 (read/write) 910483 913551 3068 0.3
text 611156 614052 2896 0.5
Increases (13 builds for esp32, linux, nrfconnect, telink)
platform target config section bb2838f 939cada change % change
esp32 all-clusters-app c3devkit (read only) 919194 919294 100 0.0
(read/write) 1376754 1376858 104 0.0
.dram0.bss 67384 67416 32 0.0
.flash.rodata 175992 176064 72 0.0
.flash.text 919194 919294 100 0.0
m5stack (read only) 967535 967651 116 0.0
(read/write) 443168 443264 96 0.0
.dram0.bss 71856 71888 32 0.0
.flash.rodata 205152 205216 64 0.0
.flash.text 962151 962267 116 0.0
linux chip-tool-ipv6only arm64 (read only) 8537844 8543172 5328 0.1
.got 69048 69072 24 0.0
.rodata 436908 436940 32 0.0
.text 7262020 7267348 5328 0.1
thermostat-no-ble arm64 (read only) 2050300 2052892 2592 0.1
(read/write) 145953 146593 640 0.4
.bss 64897 65457 560 0.9
.data.rel.ro 73144 73208 64 0.1
.got 4056 4072 16 0.4
.rodata 129948 130012 64 0.0
.text 1706000 1708336 2336 0.1
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 942107 945175 3068 0.3
bss 118776 118808 32 0.0
rodata 108640 108740 100 0.1
text 637108 640008 2900 0.5
nrf52840dk_nrf52840+rpc (read/write) 927619 930687 3068 0.3
bss 115820 115852 32 0.0
rodata 101088 101188 100 0.1
text 632504 635404 2900 0.5
nrf52840dongle_nrf52840 (read/write) 992783 995851 3068 0.3
bss 121620 121652 32 0.0
rodata 113392 113492 100 0.1
text 669308 672208 2900 0.4
nrf5340dk_nrf5340_cpuapp (read/write) 851962 852302 340 0.0
bss 115564 115596 32 0.0
rodata 101812 101880 68 0.1
text 554028 554268 240 0.0
lock-app nrf52840dk_nrf52840 (read/write) 912643 915711 3068 0.3
bss 118828 118860 32 0.0
rodata 103760 103860 100 0.1
text 612660 615556 2896 0.5
nrf5340dk_nrf5340_cpuapp (read/write) 822678 823018 340 0.0
bss 115648 115680 32 0.0
rodata 96984 97052 68 0.1
text 529616 529852 236 0.0
pump-app nrf52840dk_nrf52840 (read/write) 915283 918351 3068 0.3
bss 118576 118608 32 0.0
rodata 104096 104196 100 0.1
text 615136 618032 2896 0.5
pump-controller-app nrf52840dk_nrf52840 (read/write) 910483 913551 3068 0.3
bss 118600 118632 32 0.0
rodata 103248 103348 100 0.1
text 611156 614052 2896 0.5
telink lighting-app tlsr9518adk80d (read/write) 840970 841230 260 0.0
bss 87224 87256 32 0.0
text 588172 588332 160 0.0
Decreases (1 build for linux)
platform target config section bb2838f 939cada change % change
linux chip-tool-ipv6only arm64 (read/write) 390977 390049 -928 -0.2
.bss 56049 55137 -912 -1.6
.data.rel.ro 261000 260968 -32 -0.0
Full report (16 builds for esp32, linux, nrfconnect, telink)
platform target config section bb2838f 939cada change % change
esp32 all-clusters-app c3devkit (read only) 919194 919294 100 0.0
(read/write) 1376754 1376858 104 0.0
.dram0.bss 67384 67416 32 0.0
.dram0.data 14244 14244 0 0.0
.flash.rodata 175992 176064 72 0.0
.flash.text 919194 919294 100 0.0
.iram0.text 62056 62056 0 0.0
m5stack (read only) 967535 967651 116 0.0
(read/write) 443168 443264 96 0.0
.dram0.bss 71856 71888 32 0.0
.dram0.data 34032 34032 0 0.0
.flash.rodata 205152 205216 64 0.0
.flash.text 962151 962267 116 0.0
.iram0.text 123399 123399 0 0.0
linux chip-tool-ipv6only arm64 (read only) 8537844 8543172 5328 0.1
(read/write) 390977 390049 -928 -0.2
.bss 56049 55137 -912 -1.6
.data 1128 1128 0 0.0
.data.rel.ro 261000 260968 -32 -0.0
.dynamic 560 560 0 0.0
.got 69048 69072 24 0.0
.init 24 24 0 0.0
.init_array 200 200 0 0.0
.rodata 436908 436940 32 0.0
.text 7262020 7267348 5328 0.1
thermostat-no-ble arm64 (read only) 2050300 2052892 2592 0.1
(read/write) 145953 146593 640 0.4
.bss 64897 65457 560 0.9
.data 904 904 0 0.0
.data.rel.ro 73144 73208 64 0.1
.dynamic 560 560 0 0.0
.got 4056 4072 16 0.4
.init 24 24 0 0.0
.init_array 320 320 0 0.0
.rodata 129948 130012 64 0.0
.text 1706000 1708336 2336 0.1
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 942107 945175 3068 0.3
bss 118776 118808 32 0.0
rodata 108640 108740 100 0.1
text 637108 640008 2900 0.5
nrf52840dk_nrf52840+rpc (read/write) 927619 930687 3068 0.3
bss 115820 115852 32 0.0
rodata 101088 101188 100 0.1
text 632504 635404 2900 0.5
nrf52840dongle_nrf52840 (read/write) 992783 995851 3068 0.3
bss 121620 121652 32 0.0
rodata 113392 113492 100 0.1
text 669308 672208 2900 0.4
nrf5340dk_nrf5340_cpuapp (read/write) 851962 852302 340 0.0
bss 115564 115596 32 0.0
rodata 101812 101880 68 0.1
text 554028 554268 240 0.0
lock-app nrf52840dk_nrf52840 (read/write) 912643 915711 3068 0.3
bss 118828 118860 32 0.0
rodata 103760 103860 100 0.1
text 612660 615556 2896 0.5
nrf5340dk_nrf5340_cpuapp (read/write) 822678 823018 340 0.0
bss 115648 115680 32 0.0
rodata 96984 97052 68 0.1
text 529616 529852 236 0.0
pigweed-app nrf52840dk_nrf52840 (read/write) 541835 541835 0 0.0
bss 52588 52588 0 0.0
rodata 50104 50104 0 0.0
text 376940 376940 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 915283 918351 3068 0.3
bss 118576 118608 32 0.0
rodata 104096 104196 100 0.1
text 615136 618032 2896 0.5
pump-controller-app nrf52840dk_nrf52840 (read/write) 910483 913551 3068 0.3
bss 118600 118632 32 0.0
rodata 103248 103348 100 0.1
text 611156 614052 2896 0.5
shell nrf52840dk_nrf52840 (read/write) 798203 798203 0 0.0
bss 109776 109776 0 0.0
rodata 78288 78288 0 0.0
text 533644 533644 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 711022 711022 0 0.0
bss 107664 107664 0 0.0
rodata 72592 72592 0 0.0
text 451320 451320 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 840970 841230 260 0.0
bss 87224 87256 32 0.0
noinit 37160 37160 0 0.0
text 588172 588332 160 0.0

@github-actions
Copy link

github-actions bot commented Jan 25, 2022

PR #13066: Size comparison from 270081a to c5a18a6

Increases (25 builds for cyw30739, efr32, esp32, k32w, mbed, nrfconnect, p6, qpg, telink)
platform target config section 270081a c5a18a6 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 573714 573946 232 0.0
.app_xip_area 479016 479216 200 0.0
.bss 77444 77476 32 0.0
efr32 lighting-app BRD4161A (read only) 835484 835980 496 0.1
(read/write) 126980 127012 32 0.0
.bss 125080 125112 32 0.0
.text 835476 835972 496 0.1
BRD4161A+rpc (read only) 822864 823376 512 0.1
(read/write) 143640 143672 32 0.0
.bss 141640 141672 32 0.0
.text 822856 823368 512 0.1
window-app BRD4161A (read only) 806324 806820 496 0.1
(read/write) 125624 125656 32 0.0
.bss 123768 123800 32 0.0
.text 806316 806812 496 0.1
esp32 all-clusters-app c3devkit (read only) 919202 919248 46 0.0
(read/write) 1376810 1376890 80 0.0
.dram0.bss 67376 67408 32 0.0
.flash.rodata 176064 176112 48 0.0
.flash.text 919202 919248 46 0.0
m5stack (read only) 967535 967607 72 0.0
(read/write) 443240 443312 72 0.0
.dram0.bss 71856 71888 32 0.0
.flash.rodata 205224 205264 40 0.0
.flash.text 962151 962223 72 0.0
k32w light k32w061+release (read/write) 660864 661100 236 0.0
.bss 77224 77256 32 0.0
.text 575972 576176 204 0.0
lock k32w061+release (read/write) 661796 662036 240 0.0
.bss 77488 77520 32 0.0
.text 576616 576824 208 0.0
mbed all-clusters-app CY8CPROTO_062_4343W+release (read/write) 2348784 2348840 56 0.0
.bss 186084 186116 32 0.0
.text 1311360 1311416 56 0.0
lighting-app CY8CPROTO_062_4343W+release (read/write) 2333984 2334040 56 0.0
.bss 180688 180720 32 0.0
.text 1296584 1296640 56 0.0
lock-app CY8CPROTO_062_4343W+release (read/write) 2304568 2304624 56 0.0
.bss 180592 180624 32 0.0
.text 1267168 1267224 56 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 942175 942379 204 0.0
bss 118776 118808 32 0.0
rodata 108708 108752 44 0.0
text 637104 637244 140 0.0
nrf52840dk_nrf52840+rpc (read/write) 927675 927891 216 0.0
bss 115820 115852 32 0.0
rodata 101160 101200 40 0.0
text 632500 632640 140 0.0
nrf52840dongle_nrf52840 (read/write) 992855 993055 200 0.0
bss 121616 121648 32 0.0
rodata 113464 113504 40 0.0
text 669304 669444 140 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 852034 852234 200 0.0
bss 115564 115596 32 0.0
rodata 101884 101924 40 0.0
text 554024 554164 140 0.0
lock-app nrf52840dk_nrf52840 (read/write) 912683 912883 200 0.0
bss 118828 118860 32 0.0
rodata 103768 103808 40 0.0
text 612680 612816 136 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 822702 822918 216 0.0
bss 115648 115680 32 0.0
rodata 96992 97032 40 0.0
text 529636 529772 136 0.0
pump-app nrf52840dk_nrf52840 (read/write) 915339 915555 216 0.0
bss 118576 118608 32 0.0
rodata 104152 104192 40 0.0
text 615148 615284 136 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 910523 910723 200 0.0
bss 118600 118632 32 0.0
rodata 103256 103296 40 0.0
text 611176 611312 136 0.0
p6 all-clusters-app default (read/write) 2407448 2407944 496 0.0
.bss 114428 114460 32 0.0
.text 1365712 1366208 496 0.0
light-app default (read/write) 2330256 2330752 496 0.0
.bss 105272 105304 32 0.0
.text 1288520 1289016 496 0.0
lock-app default (read/write) 2299664 2300176 512 0.0
.bss 105024 105056 32 0.0
.text 1257928 1258440 512 0.0
qpg lighting-app qpg6105+debug (read only) 567092 567260 168 0.0
.bss 89416 89448 32 0.0
.text 561772 561940 168 0.0
lock-app qpg6105+debug (read only) 515752 515912 160 0.0
.bss 88896 88928 32 0.0
.text 510432 510592 160 0.0
telink lighting-app tlsr9518adk80d (read/write) 841062 841174 112 0.0
bss 87224 87256 32 0.0
text 588184 588228 44 0.0
Full report (31 builds for cyw30739, efr32, esp32, k32w, mbed, nrfconnect, p6, qpg, telink)
platform target config section 270081a c5a18a6 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 573714 573946 232 0.0
.app_xip_area 479016 479216 200 0.0
.bss 77444 77476 32 0.0
.data 596 596 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
efr32 lighting-app BRD4161A (read only) 835484 835980 496 0.1
(read/write) 126980 127012 32 0.0
.bss 125080 125112 32 0.0
.data 1900 1900 0 0.0
.text 835476 835972 496 0.1
BRD4161A+rpc (read only) 822864 823376 512 0.1
(read/write) 143640 143672 32 0.0
.bss 141640 141672 32 0.0
.data 2000 2000 0 0.0
.text 822856 823368 512 0.1
window-app BRD4161A (read only) 806324 806820 496 0.1
(read/write) 125624 125656 32 0.0
.bss 123768 123800 32 0.0
.data 1856 1856 0 0.0
.text 806316 806812 496 0.1
esp32 all-clusters-app c3devkit (read only) 919202 919248 46 0.0
(read/write) 1376810 1376890 80 0.0
.dram0.bss 67376 67408 32 0.0
.dram0.data 14244 14244 0 0.0
.flash.rodata 176064 176112 48 0.0
.flash.text 919202 919248 46 0.0
.iram0.text 62056 62056 0 0.0
m5stack (read only) 967535 967607 72 0.0
(read/write) 443240 443312 72 0.0
.dram0.bss 71856 71888 32 0.0
.dram0.data 34032 34032 0 0.0
.flash.rodata 205224 205264 40 0.0
.flash.text 962151 962223 72 0.0
.iram0.text 123399 123399 0 0.0
k32w light k32w061+release (read/write) 660864 661100 236 0.0
.bss 77224 77256 32 0.0
.data 1868 1868 0 0.0
.text 575972 576176 204 0.0
lock k32w061+release (read/write) 661796 662036 240 0.0
.bss 77488 77520 32 0.0
.data 1892 1892 0 0.0
.text 576616 576824 208 0.0
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2348784 2348840 56 0.0
.bss 186084 186116 32 0.0
.data 5296 5296 0 0.0
.text 1311360 1311416 56 0.0
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2333984 2334040 56 0.0
.bss 180688 180720 32 0.0
.data 5576 5576 0 0.0
.text 1296584 1296640 56 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2304568 2304624 56 0.0
.bss 180592 180624 32 0.0
.data 5568 5568 0 0.0
.text 1267168 1267224 56 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139712 1139712 0 0.0
.bss 11756 11756 0 0.0
.data 4368 4368 0 0.0
.text 103096 103096 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2053896 2053896 0 0.0
.bss 156876 156876 0 0.0
.data 4864 4864 0 0.0
.text 1016496 1016496 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 942175 942379 204 0.0
bss 118776 118808 32 0.0
rodata 108708 108752 44 0.0
text 637104 637244 140 0.0
nrf52840dk_nrf52840+rpc (read/write) 927675 927891 216 0.0
bss 115820 115852 32 0.0
rodata 101160 101200 40 0.0
text 632500 632640 140 0.0
nrf52840dongle_nrf52840 (read/write) 992855 993055 200 0.0
bss 121616 121648 32 0.0
rodata 113464 113504 40 0.0
text 669304 669444 140 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 852034 852234 200 0.0
bss 115564 115596 32 0.0
rodata 101884 101924 40 0.0
text 554024 554164 140 0.0
lock-app nrf52840dk_nrf52840 (read/write) 912683 912883 200 0.0
bss 118828 118860 32 0.0
rodata 103768 103808 40 0.0
text 612680 612816 136 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 822702 822918 216 0.0
bss 115648 115680 32 0.0
rodata 96992 97032 40 0.0
text 529636 529772 136 0.0
pigweed-app nrf52840dk_nrf52840 (read/write) 541835 541835 0 0.0
bss 52588 52588 0 0.0
rodata 50104 50104 0 0.0
text 376940 376940 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 915339 915555 216 0.0
bss 118576 118608 32 0.0
rodata 104152 104192 40 0.0
text 615148 615284 136 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 910523 910723 200 0.0
bss 118600 118632 32 0.0
rodata 103256 103296 40 0.0
text 611176 611312 136 0.0
shell nrf52840dk_nrf52840 (read/write) 798203 798203 0 0.0
bss 109776 109776 0 0.0
rodata 78288 78288 0 0.0
text 533644 533644 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 711022 711022 0 0.0
bss 107664 107664 0 0.0
rodata 72592 72592 0 0.0
text 451320 451320 0 0.0
p6 all-clusters-app default (read/write) 2407448 2407944 496 0.0
.bss 114428 114460 32 0.0
.data 2584 2584 0 0.0
.text 1365712 1366208 496 0.0
light-app default (read/write) 2330256 2330752 496 0.0
.bss 105272 105304 32 0.0
.data 2408 2408 0 0.0
.text 1288520 1289016 496 0.0
lock-app default (read/write) 2299664 2300176 512 0.0
.bss 105024 105056 32 0.0
.data 2360 2360 0 0.0
.text 1257928 1258440 512 0.0
qpg lighting-app qpg6105+debug (read only) 567092 567260 168 0.0
(read/write) 146936 146936 0 0.0
.bss 89416 89448 32 0.0
.data 1060 1060 0 0.0
.text 561772 561940 168 0.0
lock-app qpg6105+debug (read only) 515752 515912 160 0.0
(read/write) 146940 146940 0 0.0
.bss 88896 88928 32 0.0
.data 992 992 0 0.0
.text 510432 510592 160 0.0
persistent-storage-app qpg6105+debug (read only) 107140 107140 0 0.0
(read/write) 146940 146940 0 0.0
.bss 38504 38504 0 0.0
.data 288 288 0 0.0
.text 101820 101820 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 841062 841174 112 0.0
bss 87224 87256 32 0.0
noinit 37160 37160 0 0.0
text 588184 588228 44 0.0

@github-actions
Copy link

github-actions bot commented Jan 25, 2022

PR #13066: Size comparison from be9582b to cdd5849

Increases above 0.2%:

platform target config section be9582b cdd5849 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 572258 578222 5964 1.0
.app_xip_area 477320 483248 5928 1.2
efr32 lighting-app BRD4161A (read only) 832688 839868 7180 0.9
.text 832680 839860 7180 0.9
BRD4161A+rpc (read only) 820068 827256 7188 0.9
.text 820060 827248 7188 0.9
window-app BRD4161A (read only) 808864 812212 3348 0.4
.text 808856 812204 3348 0.4
esp32 all-clusters-app c3devkit (read/write) 1317858 1384410 66552 5.1
.flash.rodata 179520 180504 984 0.5
m5stack .flash.rodata 208832 209800 968 0.5
k32w light k32w061+release (read/write) 660496 663100 2604 0.4
.text 575372 577940 2568 0.4
lock k32w061+release (read/write) 661392 664016 2624 0.4
.text 575980 578568 2588 0.4
linux chip-tool-ipv6only arm64 (read only) 8697804 8720524 22720 0.3
.got 69040 69256 216 0.3
.rodata 532532 534420 1888 0.4
.text 7326532 7345588 19056 0.3
thermostat-no-ble arm64 (read only) 2043436 2052252 8816 0.4
(read/write) 146625 147425 800 0.5
.bss 65649 66225 576 0.9
.data.rel.ro 73072 73256 184 0.3
.got 4048 4080 32 0.8
.rodata 130620 131404 784 0.6
.text 1698512 1706096 7584 0.4
mbed all-clusters-app CY8CPROTO_062_4343W+release .text 1312512 1315704 3192 0.2
lighting-app CY8CPROTO_062_4343W+release (read/write) 2332232 2339024 6792 0.3
.text 1294832 1301624 6792 0.5
lock-app CY8CPROTO_062_4343W+release .text 1265416 1268376 2960 0.2
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 941035 946983 5948 0.6
rodata 109072 110444 1372 1.3
text 635356 639888 4532 0.7
nrf52840dk_nrf52840+rpc (read/write) 926519 932483 5964 0.6
rodata 101524 102896 1372 1.4
text 630748 635280 4532 0.7
nrf52840dongle_nrf52840 (read/write) 991679 997643 5964 0.6
rodata 113824 115196 1372 1.2
text 667552 672084 4532 0.7
nrf5340dk_nrf5340_cpuapp (read/write) 850862 856822 5960 0.7
rodata 102248 103616 1368 1.3
text 552276 556804 4528 0.8
lock-app nrf52840dk_nrf52840 (read/write) 911507 914103 2596 0.3
rodata 104128 104980 852 0.8
text 610932 612644 1712 0.3
nrf5340dk_nrf5340_cpuapp (read/write) 821578 824174 2596 0.3
rodata 97356 98208 852 0.9
text 527888 529596 1708 0.3
pump-app nrf52840dk_nrf52840 (read/write) 914183 916779 2596 0.3
rodata 104516 105368 852 0.8
text 613396 615112 1716 0.3
pump-controller-app nrf52840dk_nrf52840 (read/write) 909351 911947 2596 0.3
rodata 103620 104472 852 0.8
text 609428 611140 1712 0.3
p6 all-clusters-app default .text 1366312 1370224 3912 0.3
light-app default (read/write) 2327768 2335440 7672 0.3
.text 1286032 1293704 7672 0.6
lock-app default .text 1255472 1259256 3784 0.3
qpg lighting-app qpg6105+debug (read only) 565568 570008 4440 0.8
.text 560248 564688 4440 0.8
lock-app qpg6105+debug (read only) 514324 516108 1784 0.3
.text 509004 510788 1784 0.4
telink lighting-app tlsr9518adk80d (read/write) 839534 845674 6140 0.7
text 586050 590728 4678 0.8
Increases (30 builds for cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section be9582b cdd5849 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 572258 578222 5964 1.0
.app_xip_area 477320 483248 5928 1.2
.bss 77684 77720 36 0.0
efr32 lighting-app BRD4161A (read only) 832688 839868 7180 0.9
(read/write) 127216 127260 44 0.0
.bss 125312 125360 48 0.0
.text 832680 839860 7180 0.9
BRD4161A+rpc (read only) 820068 827256 7188 0.9
(read/write) 143872 143920 48 0.0
.bss 141872 141920 48 0.0
.text 820060 827248 7188 0.9
window-app BRD4161A (read only) 808864 812212 3348 0.4
(read/write) 125872 125916 44 0.0
.bss 124016 124060 44 0.0
.text 808856 812204 3348 0.4
esp32 all-clusters-app c3devkit (read only) 916980 918938 1958 0.2
(read/write) 1317858 1384410 66552 5.1
.dram0.bss 70696 70736 40 0.1
.flash.rodata 179520 180504 984 0.5
.flash.text 916980 918938 1958 0.2
m5stack (read only) 965955 968159 2204 0.2
(read/write) 450432 451440 1008 0.2
.dram0.bss 75440 75480 40 0.1
.flash.rodata 208832 209800 968 0.5
.flash.text 960571 962775 2204 0.2
k32w light k32w061+release (read/write) 660496 663100 2604 0.4
.bss 77456 77492 36 0.0
.text 575372 577940 2568 0.4
lock k32w061+release (read/write) 661392 664016 2624 0.4
.bss 77720 77756 36 0.0
.text 575980 578568 2588 0.4
linux chip-tool-ipv6only arm64 (read only) 8697804 8720524 22720 0.3
.data.rel.ro 260888 261408 520 0.2
.got 69040 69256 216 0.3
.rodata 532532 534420 1888 0.4
.text 7326532 7345588 19056 0.3
thermostat-no-ble arm64 (read only) 2043436 2052252 8816 0.4
(read/write) 146625 147425 800 0.5
.bss 65649 66225 576 0.9
.data.rel.ro 73072 73256 184 0.3
.got 4048 4080 32 0.8
.rodata 130620 131404 784 0.6
.text 1698512 1706096 7584 0.4
mbed all-clusters-app CY8CPROTO_062_4343W+release (read/write) 2349912 2353104 3192 0.1
.bss 189404 189444 40 0.0
.text 1312512 1315704 3192 0.2
lighting-app CY8CPROTO_062_4343W+release (read/write) 2332232 2339024 6792 0.3
.bss 180920 180968 48 0.0
.text 1294832 1301624 6792 0.5
lock-app CY8CPROTO_062_4343W+release (read/write) 2302816 2305776 2960 0.1
.bss 180824 180864 40 0.0
.text 1265416 1268376 2960 0.2
shell CY8CPROTO_062_4343W+release (read/write) 2053896 2053960 64 0.0
.text 1016496 1016560 64 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 941035 946983 5948 0.6
bss 119012 119056 44 0.0
rodata 109072 110444 1372 1.3
text 635356 639888 4532 0.7
nrf52840dk_nrf52840+rpc (read/write) 926519 932483 5964 0.6
bss 116056 116100 44 0.0
rodata 101524 102896 1372 1.4
text 630748 635280 4532 0.7
nrf52840dongle_nrf52840 (read/write) 991679 997643 5964 0.6
bss 121852 121896 44 0.0
rodata 113824 115196 1372 1.2
text 667552 672084 4532 0.7
nrf5340dk_nrf5340_cpuapp (read/write) 850862 856822 5960 0.7
bss 115796 115844 48 0.0
rodata 102248 103616 1368 1.3
text 552276 556804 4528 0.8
lock-app nrf52840dk_nrf52840 (read/write) 911507 914103 2596 0.3
bss 119064 119104 40 0.0
rodata 104128 104980 852 0.8
text 610932 612644 1712 0.3
nrf5340dk_nrf5340_cpuapp (read/write) 821578 824174 2596 0.3
bss 115880 115920 40 0.0
rodata 97356 98208 852 0.9
text 527888 529596 1708 0.3
pump-app nrf52840dk_nrf52840 (read/write) 914183 916779 2596 0.3
bss 118808 118848 40 0.0
rodata 104516 105368 852 0.8
text 613396 615112 1716 0.3
pump-controller-app nrf52840dk_nrf52840 (read/write) 909351 911947 2596 0.3
bss 118836 118876 40 0.0
rodata 103620 104472 852 0.8
text 609428 611140 1712 0.3
shell nrf52840dk_nrf52840 (read/write) 798203 798219 16 0.0
text 533640 533648 8 0.0
nrf5340dk_nrf5340_cpuapp text 451316 451324 8 0.0
p6 all-clusters-app default (read/write) 2408048 2411960 3912 0.2
.bss 117748 117788 40 0.0
.text 1366312 1370224 3912 0.3
light-app default (read/write) 2327768 2335440 7672 0.3
.bss 105512 105548 36 0.0
.text 1286032 1293704 7672 0.6
lock-app default (read/write) 2297208 2300992 3784 0.2
.bss 105256 105292 36 0.0
.text 1255472 1259256 3784 0.3
qpg lighting-app qpg6105+debug (read only) 565568 570008 4440 0.8
.bss 89656 89704 48 0.1
.text 560248 564688 4440 0.8
lock-app qpg6105+debug (read only) 514324 516108 1784 0.3
.bss 89128 89176 48 0.1
.text 509004 510788 1784 0.4
telink lighting-app tlsr9518adk80d (read/write) 839534 845674 6140 0.7
bss 87460 87504 44 0.1
text 586050 590728 4678 0.8
Decreases (1 build for linux)
platform target config section be9582b cdd5849 change % change
linux chip-tool-ipv6only arm64 (read/write) 390817 390657 -160 -0.0
.bss 56017 55121 -896 -1.6
Full report (33 builds for cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section be9582b cdd5849 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 572258 578222 5964 1.0
.app_xip_area 477320 483248 5928 1.2
.bss 77684 77720 36 0.0
.data 596 596 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
efr32 lighting-app BRD4161A (read only) 832688 839868 7180 0.9
(read/write) 127216 127260 44 0.0
.bss 125312 125360 48 0.0
.data 1900 1900 0 0.0
.text 832680 839860 7180 0.9
BRD4161A+rpc (read only) 820068 827256 7188 0.9
(read/write) 143872 143920 48 0.0
.bss 141872 141920 48 0.0
.data 2000 2000 0 0.0
.text 820060 827248 7188 0.9
window-app BRD4161A (read only) 808864 812212 3348 0.4
(read/write) 125872 125916 44 0.0
.bss 124016 124060 44 0.0
.data 1856 1856 0 0.0
.text 808856 812204 3348 0.4
esp32 all-clusters-app c3devkit (read only) 916980 918938 1958 0.2
(read/write) 1317858 1384410 66552 5.1
.dram0.bss 70696 70736 40 0.1
.dram0.data 14244 14244 0 0.0
.flash.rodata 179520 180504 984 0.5
.flash.text 916980 918938 1958 0.2
.iram0.text 62056 62056 0 0.0
m5stack (read only) 965955 968159 2204 0.2
(read/write) 450432 451440 1008 0.2
.dram0.bss 75440 75480 40 0.1
.dram0.data 34032 34032 0 0.0
.flash.rodata 208832 209800 968 0.5
.flash.text 960571 962775 2204 0.2
.iram0.text 123399 123399 0 0.0
k32w light k32w061+release (read/write) 660496 663100 2604 0.4
.bss 77456 77492 36 0.0
.data 1868 1868 0 0.0
.text 575372 577940 2568 0.4
lock k32w061+release (read/write) 661392 664016 2624 0.4
.bss 77720 77756 36 0.0
.data 1892 1892 0 0.0
.text 575980 578568 2588 0.4
linux chip-tool-ipv6only arm64 (read only) 8697804 8720524 22720 0.3
(read/write) 390817 390657 -160 -0.0
.bss 56017 55121 -896 -1.6
.data 1128 1128 0 0.0
.data.rel.ro 260888 261408 520 0.2
.dynamic 560 560 0 0.0
.got 69040 69256 216 0.3
.init 24 24 0 0.0
.init_array 200 200 0 0.0
.rodata 532532 534420 1888 0.4
.text 7326532 7345588 19056 0.3
thermostat-no-ble arm64 (read only) 2043436 2052252 8816 0.4
(read/write) 146625 147425 800 0.5
.bss 65649 66225 576 0.9
.data 904 904 0 0.0
.data.rel.ro 73072 73256 184 0.3
.dynamic 560 560 0 0.0
.got 4048 4080 32 0.8
.init 24 24 0 0.0
.init_array 320 320 0 0.0
.rodata 130620 131404 784 0.6
.text 1698512 1706096 7584 0.4
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2349912 2353104 3192 0.1
.bss 189404 189444 40 0.0
.data 5296 5296 0 0.0
.text 1312512 1315704 3192 0.2
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2332232 2339024 6792 0.3
.bss 180920 180968 48 0.0
.data 5576 5576 0 0.0
.text 1294832 1301624 6792 0.5
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2302816 2305776 2960 0.1
.bss 180824 180864 40 0.0
.data 5568 5568 0 0.0
.text 1265416 1268376 2960 0.2
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139712 1139712 0 0.0
.bss 11756 11756 0 0.0
.data 4368 4368 0 0.0
.text 103096 103096 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2053896 2053960 64 0.0
.bss 156876 156876 0 0.0
.data 4864 4864 0 0.0
.text 1016496 1016560 64 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 941035 946983 5948 0.6
bss 119012 119056 44 0.0
rodata 109072 110444 1372 1.3
text 635356 639888 4532 0.7
nrf52840dk_nrf52840+rpc (read/write) 926519 932483 5964 0.6
bss 116056 116100 44 0.0
rodata 101524 102896 1372 1.4
text 630748 635280 4532 0.7
nrf52840dongle_nrf52840 (read/write) 991679 997643 5964 0.6
bss 121852 121896 44 0.0
rodata 113824 115196 1372 1.2
text 667552 672084 4532 0.7
nrf5340dk_nrf5340_cpuapp (read/write) 850862 856822 5960 0.7
bss 115796 115844 48 0.0
rodata 102248 103616 1368 1.3
text 552276 556804 4528 0.8
lock-app nrf52840dk_nrf52840 (read/write) 911507 914103 2596 0.3
bss 119064 119104 40 0.0
rodata 104128 104980 852 0.8
text 610932 612644 1712 0.3
nrf5340dk_nrf5340_cpuapp (read/write) 821578 824174 2596 0.3
bss 115880 115920 40 0.0
rodata 97356 98208 852 0.9
text 527888 529596 1708 0.3
pigweed-app nrf52840dk_nrf52840 (read/write) 541835 541835 0 0.0
bss 52588 52588 0 0.0
rodata 50104 50104 0 0.0
text 376940 376940 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 914183 916779 2596 0.3
bss 118808 118848 40 0.0
rodata 104516 105368 852 0.8
text 613396 615112 1716 0.3
pump-controller-app nrf52840dk_nrf52840 (read/write) 909351 911947 2596 0.3
bss 118836 118876 40 0.0
rodata 103620 104472 852 0.8
text 609428 611140 1712 0.3
shell nrf52840dk_nrf52840 (read/write) 798203 798219 16 0.0
bss 109776 109776 0 0.0
rodata 78288 78288 0 0.0
text 533640 533648 8 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 711022 711022 0 0.0
bss 107664 107664 0 0.0
rodata 72592 72592 0 0.0
text 451316 451324 8 0.0
p6 all-clusters-app default (read/write) 2408048 2411960 3912 0.2
.bss 117748 117788 40 0.0
.data 2584 2584 0 0.0
.text 1366312 1370224 3912 0.3
light-app default (read/write) 2327768 2335440 7672 0.3
.bss 105512 105548 36 0.0
.data 2408 2408 0 0.0
.text 1286032 1293704 7672 0.6
lock-app default (read/write) 2297208 2300992 3784 0.2
.bss 105256 105292 36 0.0
.data 2360 2360 0 0.0
.text 1255472 1259256 3784 0.3
qpg lighting-app qpg6105+debug (read only) 565568 570008 4440 0.8
(read/write) 146936 146936 0 0.0
.bss 89656 89704 48 0.1
.data 1060 1060 0 0.0
.text 560248 564688 4440 0.8
lock-app qpg6105+debug (read only) 514324 516108 1784 0.3
(read/write) 146940 146940 0 0.0
.bss 89128 89176 48 0.1
.data 992 992 0 0.0
.text 509004 510788 1784 0.4
persistent-storage-app qpg6105+debug (read only) 107140 107140 0 0.0
(read/write) 146940 146940 0 0.0
.bss 38504 38504 0 0.0
.data 288 288 0 0.0
.text 101820 101820 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 839534 845674 6140 0.7
bss 87460 87504 44 0.1
noinit 37160 37160 0 0.0
text 586050 590728 4678 0.8

two timer callbacks, resulting in it firing after the object's
destruction and causing all kinds of memory corruption havoc that took 3
hours to debug.
@github-actions
Copy link

PR #13066: Size comparison from be9582b to a35b0f6

Increases above 0.2%:

platform target config section be9582b a35b0f6 change % change
esp32 all-clusters-app c3devkit (read only) 916980 920752 3772 0.4
(read/write) 1317858 1384690 66832 5.1
.dram0.bss 70696 70872 176 0.2
.flash.rodata 179520 180640 1120 0.6
.flash.text 916980 920752 3772 0.4
m5stack (read only) 965955 969759 3804 0.4
(read/write) 450432 451712 1280 0.3
.dram0.bss 75440 75616 176 0.2
.flash.rodata 208832 209936 1104 0.5
.flash.text 960571 964375 3804 0.4
Increases (2 builds for esp32)
platform target config section be9582b a35b0f6 change % change
esp32 all-clusters-app c3devkit (read only) 916980 920752 3772 0.4
(read/write) 1317858 1384690 66832 5.1
.dram0.bss 70696 70872 176 0.2
.flash.rodata 179520 180640 1120 0.6
.flash.text 916980 920752 3772 0.4
m5stack (read only) 965955 969759 3804 0.4
(read/write) 450432 451712 1280 0.3
.dram0.bss 75440 75616 176 0.2
.flash.rodata 208832 209936 1104 0.5
.flash.text 960571 964375 3804 0.4
Full report (2 builds for esp32)
platform target config section be9582b a35b0f6 change % change
esp32 all-clusters-app c3devkit (read only) 916980 920752 3772 0.4
(read/write) 1317858 1384690 66832 5.1
.dram0.bss 70696 70872 176 0.2
.dram0.data 14244 14244 0 0.0
.flash.rodata 179520 180640 1120 0.6
.flash.text 916980 920752 3772 0.4
.iram0.text 62056 62056 0 0.0
m5stack (read only) 965955 969759 3804 0.4
(read/write) 450432 451712 1280 0.3
.dram0.bss 75440 75616 176 0.2
.dram0.data 34032 34032 0 0.0
.flash.rodata 208832 209936 1104 0.5
.flash.text 960571 964375 3804 0.4
.iram0.text 123399 123399 0 0.0

@woody-apple
Copy link
Contributor

Fast tracking, given > 3 days for review.

@github-actions
Copy link

github-actions bot commented Jan 26, 2022

PR #13066: Size comparison from 246473c to cb58a0a

Increases above 0.2%:

platform target config section 246473c cb58a0a change % change
linux thermostat-no-ble arm64 (read/write) 147457 148097 640 0.4
.bss 65857 66417 560 0.9
.got 4112 4128 16 0.4
Increases (14 builds for cyw30739, efr32, k32w, linux, p6, qpg, telink)
platform target config section 246473c cb58a0a change % change
cyw30739 light cyw930739m2evb_01 (read/write) 578462 578702 240 0.0
.app_xip_area 483384 483592 208 0.0
.bss 77824 77856 32 0.0
efr32 lighting-app BRD4161A (read only) 840836 841364 528 0.1
(read/write) 127364 127396 32 0.0
.bss 125464 125496 32 0.0
.text 840828 841356 528 0.1
BRD4161A+rpc (read only) 828208 828736 528 0.1
(read/write) 144024 144056 32 0.0
.bss 142024 142056 32 0.0
.text 828200 828728 528 0.1
window-app BRD4161A (read only) 815228 815740 512 0.1
(read/write) 126020 126052 32 0.0
.bss 124164 124196 32 0.0
.text 815220 815732 512 0.1
k32w light k32w061+release (read/write) 664644 664896 252 0.0
.bss 77596 77628 32 0.0
.text 579380 579600 220 0.0
lock k32w061+release (read/write) 665696 665936 240 0.0
.bss 77860 77892 32 0.0
.text 580144 580352 208 0.0
linux chip-tool-ipv6only arm64 (read only) 8728948 8733252 4304 0.0
.got 69280 69304 24 0.0
.text 7352756 7357092 4336 0.1
thermostat-no-ble arm64 (read only) 2058404 2060980 2576 0.1
(read/write) 147457 148097 640 0.4
.bss 65857 66417 560 0.9
.data.rel.ro 73624 73688 64 0.1
.got 4112 4128 16 0.4
.rodata 131396 131428 32 0.0
.text 1711248 1713600 2352 0.1
p6 all-clusters-app default (read/write) 2414704 2415216 512 0.0
.bss 117892 117924 32 0.0
.text 1372968 1373480 512 0.0
light-app default (read/write) 2336424 2336936 512 0.0
.bss 105644 105676 32 0.0
.text 1294688 1295200 512 0.0
lock-app default (read/write) 2303720 2304232 512 0.0
.bss 105396 105428 32 0.0
.text 1261984 1262496 512 0.0
qpg lighting-app qpg6105+debug (read only) 570044 570220 176 0.0
.bss 89800 89832 32 0.0
.text 564724 564900 176 0.0
lock-app qpg6105+debug (read only) 517724 517908 184 0.0
.bss 89280 89312 32 0.0
.text 512404 512588 184 0.0
telink lighting-app tlsr9518adk80d (read/write) 846030 846166 136 0.0
bss 87608 87640 32 0.0
text 591096 591164 68 0.0
Decreases (1 build for linux)
platform target config section 246473c cb58a0a change % change
linux chip-tool-ipv6only arm64 (read/write) 392273 391345 -928 -0.2
.bss 56241 55329 -912 -1.6
.data.rel.ro 261872 261840 -32 -0.0
Full report (15 builds for cyw30739, efr32, k32w, linux, p6, qpg, telink)
platform target config section 246473c cb58a0a change % change
cyw30739 light cyw930739m2evb_01 (read/write) 578462 578702 240 0.0
.app_xip_area 483384 483592 208 0.0
.bss 77824 77856 32 0.0
.data 596 596 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
efr32 lighting-app BRD4161A (read only) 840836 841364 528 0.1
(read/write) 127364 127396 32 0.0
.bss 125464 125496 32 0.0
.data 1900 1900 0 0.0
.text 840828 841356 528 0.1
BRD4161A+rpc (read only) 828208 828736 528 0.1
(read/write) 144024 144056 32 0.0
.bss 142024 142056 32 0.0
.data 2000 2000 0 0.0
.text 828200 828728 528 0.1
window-app BRD4161A (read only) 815228 815740 512 0.1
(read/write) 126020 126052 32 0.0
.bss 124164 124196 32 0.0
.data 1856 1856 0 0.0
.text 815220 815732 512 0.1
k32w light k32w061+release (read/write) 664644 664896 252 0.0
.bss 77596 77628 32 0.0
.data 1868 1868 0 0.0
.text 579380 579600 220 0.0
lock k32w061+release (read/write) 665696 665936 240 0.0
.bss 77860 77892 32 0.0
.data 1892 1892 0 0.0
.text 580144 580352 208 0.0
linux chip-tool-ipv6only arm64 (read only) 8728948 8733252 4304 0.0
(read/write) 392273 391345 -928 -0.2
.bss 56241 55329 -912 -1.6
.data 1128 1128 0 0.0
.data.rel.ro 261872 261840 -32 -0.0
.dynamic 560 560 0 0.0
.got 69280 69304 24 0.0
.init 24 24 0 0.0
.init_array 200 200 0 0.0
.rodata 534444 534444 0 0.0
.text 7352756 7357092 4336 0.1
thermostat-no-ble arm64 (read only) 2058404 2060980 2576 0.1
(read/write) 147457 148097 640 0.4
.bss 65857 66417 560 0.9
.data 904 904 0 0.0
.data.rel.ro 73624 73688 64 0.1
.dynamic 560 560 0 0.0
.got 4112 4128 16 0.4
.init 24 24 0 0.0
.init_array 320 320 0 0.0
.rodata 131396 131428 32 0.0
.text 1711248 1713600 2352 0.1
p6 all-clusters-app default (read/write) 2414704 2415216 512 0.0
.bss 117892 117924 32 0.0
.data 2584 2584 0 0.0
.text 1372968 1373480 512 0.0
light-app default (read/write) 2336424 2336936 512 0.0
.bss 105644 105676 32 0.0
.data 2408 2408 0 0.0
.text 1294688 1295200 512 0.0
lock-app default (read/write) 2303720 2304232 512 0.0
.bss 105396 105428 32 0.0
.data 2360 2360 0 0.0
.text 1261984 1262496 512 0.0
qpg lighting-app qpg6105+debug (read only) 570044 570220 176 0.0
(read/write) 146936 146936 0 0.0
.bss 89800 89832 32 0.0
.data 1060 1060 0 0.0
.text 564724 564900 176 0.0
lock-app qpg6105+debug (read only) 517724 517908 184 0.0
(read/write) 146940 146940 0 0.0
.bss 89280 89312 32 0.0
.data 992 992 0 0.0
.text 512404 512588 184 0.0
persistent-storage-app qpg6105+debug (read only) 107140 107140 0 0.0
(read/write) 146940 146940 0 0.0
.bss 38504 38504 0 0.0
.data 288 288 0 0.0
.text 101820 101820 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 846030 846166 136 0.0
bss 87608 87640 32 0.0
noinit 37160 37160 0 0.0
text 591096 591164 68 0.0

@github-actions
Copy link

github-actions bot commented Jan 26, 2022

PR #13066: Size comparison from 246473c to e0e565a

Increases above 0.2%:

platform target config section 246473c e0e565a change % change
cyw30739 light cyw930739m2evb_01 (read/write) 578462 580150 1688 0.3
.app_xip_area 483384 485040 1656 0.3
linux thermostat-no-ble arm64 (read/write) 147457 148097 640 0.4
.bss 65857 66417 560 0.9
.got 4112 4128 16 0.4
qpg lighting-app qpg6105+debug (read only) 570044 571660 1616 0.3
.text 564724 566340 1616 0.3
telink lighting-app tlsr9518adk80d text 591096 592628 1532 0.3
Increases (11 builds for cyw30739, k32w, linux, p6, qpg, telink)
platform target config section 246473c e0e565a change % change
cyw30739 light cyw930739m2evb_01 (read/write) 578462 580150 1688 0.3
.app_xip_area 483384 485040 1656 0.3
.bss 77824 77856 32 0.0
k32w light k32w061+release (read/write) 664644 664896 252 0.0
.bss 77596 77628 32 0.0
.text 579380 579600 220 0.0
lock k32w061+release (read/write) 665696 665936 240 0.0
.bss 77860 77892 32 0.0
.text 580144 580352 208 0.0
linux chip-tool-ipv6only arm64 (read only) 8728948 8733252 4304 0.0
.got 69280 69304 24 0.0
.text 7352756 7357092 4336 0.1
thermostat-no-ble arm64 (read only) 2058404 2060980 2576 0.1
(read/write) 147457 148097 640 0.4
.bss 65857 66417 560 0.9
.data.rel.ro 73624 73688 64 0.1
.got 4112 4128 16 0.4
.rodata 131396 131428 32 0.0
.text 1711248 1713600 2352 0.1
p6 all-clusters-app default (read/write) 2414704 2415216 512 0.0
.bss 117892 117924 32 0.0
.text 1372968 1373480 512 0.0
light-app default (read/write) 2336424 2338696 2272 0.1
.bss 105644 105684 40 0.0
.text 1294688 1296960 2272 0.2
lock-app default (read/write) 2303720 2304232 512 0.0
.bss 105396 105428 32 0.0
.text 1261984 1262496 512 0.0
qpg lighting-app qpg6105+debug (read only) 570044 571660 1616 0.3
.bss 89800 89840 40 0.0
.text 564724 566340 1616 0.3
lock-app qpg6105+debug (read only) 517724 517908 184 0.0
.bss 89280 89312 32 0.0
.text 512404 512588 184 0.0
telink lighting-app tlsr9518adk80d (read/write) 846030 847854 1824 0.2
bss 87608 87640 32 0.0
text 591096 592628 1532 0.3
Decreases (1 build for linux)
platform target config section 246473c e0e565a change % change
linux chip-tool-ipv6only arm64 (read/write) 392273 391345 -928 -0.2
.bss 56241 55329 -912 -1.6
.data.rel.ro 261872 261840 -32 -0.0
Full report (12 builds for cyw30739, k32w, linux, p6, qpg, telink)
platform target config section 246473c e0e565a change % change
cyw30739 light cyw930739m2evb_01 (read/write) 578462 580150 1688 0.3
.app_xip_area 483384 485040 1656 0.3
.bss 77824 77856 32 0.0
.data 596 596 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
k32w light k32w061+release (read/write) 664644 664896 252 0.0
.bss 77596 77628 32 0.0
.data 1868 1868 0 0.0
.text 579380 579600 220 0.0
lock k32w061+release (read/write) 665696 665936 240 0.0
.bss 77860 77892 32 0.0
.data 1892 1892 0 0.0
.text 580144 580352 208 0.0
linux chip-tool-ipv6only arm64 (read only) 8728948 8733252 4304 0.0
(read/write) 392273 391345 -928 -0.2
.bss 56241 55329 -912 -1.6
.data 1128 1128 0 0.0
.data.rel.ro 261872 261840 -32 -0.0
.dynamic 560 560 0 0.0
.got 69280 69304 24 0.0
.init 24 24 0 0.0
.init_array 200 200 0 0.0
.rodata 534444 534444 0 0.0
.text 7352756 7357092 4336 0.1
thermostat-no-ble arm64 (read only) 2058404 2060980 2576 0.1
(read/write) 147457 148097 640 0.4
.bss 65857 66417 560 0.9
.data 904 904 0 0.0
.data.rel.ro 73624 73688 64 0.1
.dynamic 560 560 0 0.0
.got 4112 4128 16 0.4
.init 24 24 0 0.0
.init_array 320 320 0 0.0
.rodata 131396 131428 32 0.0
.text 1711248 1713600 2352 0.1
p6 all-clusters-app default (read/write) 2414704 2415216 512 0.0
.bss 117892 117924 32 0.0
.data 2584 2584 0 0.0
.text 1372968 1373480 512 0.0
light-app default (read/write) 2336424 2338696 2272 0.1
.bss 105644 105684 40 0.0
.data 2408 2408 0 0.0
.text 1294688 1296960 2272 0.2
lock-app default (read/write) 2303720 2304232 512 0.0
.bss 105396 105428 32 0.0
.data 2360 2360 0 0.0
.text 1261984 1262496 512 0.0
qpg lighting-app qpg6105+debug (read only) 570044 571660 1616 0.3
(read/write) 146936 146936 0 0.0
.bss 89800 89840 40 0.0
.data 1060 1060 0 0.0
.text 564724 566340 1616 0.3
lock-app qpg6105+debug (read only) 517724 517908 184 0.0
(read/write) 146940 146940 0 0.0
.bss 89280 89312 32 0.0
.data 992 992 0 0.0
.text 512404 512588 184 0.0
persistent-storage-app qpg6105+debug (read only) 107140 107140 0 0.0
(read/write) 146940 146940 0 0.0
.bss 38504 38504 0 0.0
.data 288 288 0 0.0
.text 101820 101820 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 846030 847854 1824 0.2
bss 87608 87640 32 0.0
noinit 37160 37160 0 0.0
text 591096 592628 1532 0.3

@mrjerryjohns mrjerryjohns merged commit 12db26d into project-chip:master Jan 26, 2022
selissia pushed a commit to selissia/connectedhomeip that referenced this pull request Jan 28, 2022
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.

7 participants