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

[IM] Move lifecycle management of WriteClient to application #13248

Merged
merged 3 commits into from
Jan 20, 2022

Conversation

erjiaqing
Copy link
Contributor

@erjiaqing erjiaqing commented Dec 28, 2021

Problem

Fixes #8006 -- when there is no WriteClient / CommandSender instances, the related code should be optimized out.

Unlike ReadClient and CommandSender, management of the lifecycle of WriteClient is handled by interaction model engine.

Change overview

Update the code to make it managed by application.

Testing

  • sanitiser should make sure that there is no memory leak in this PR.

@erjiaqing erjiaqing force-pushed the im/read-write-lifecycle branch from 022785b to c2a20b9 Compare January 18, 2022 08:07
@github-actions
Copy link

github-actions bot commented Jan 18, 2022

PR #13248: Size comparison from d611c63 to c2a20b9

Increases (1 build for linux)
platform target config section d611c63 c2a20b9 change % change
linux chip-tool-ipv6only arm64 (read only) 8049492 8050876 1384 0.0
.rodata 419420 419428 8 0.0
.text 6841076 6842548 1472 0.0
Decreases (26 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section d611c63 c2a20b9 change % change
efr32 lighting-app BRD4161A (read only) 834868 832596 -2272 -0.3
(read/write) 127628 127100 -528 -0.4
.bss 125744 125216 -528 -0.4
.text 834860 832588 -2272 -0.3
BRD4161A+rpc (read only) 822264 820000 -2264 -0.3
(read/write) 144288 143760 -528 -0.4
.bss 142304 141776 -528 -0.4
.text 822256 819992 -2264 -0.3
window-app BRD4161A (read only) 805456 803188 -2268 -0.3
(read/write) 126320 125788 -532 -0.4
.bss 124480 123952 -528 -0.4
.text 805448 803180 -2268 -0.3
esp32 all-clusters-app c3devkit (read only) 912384 910336 -2048 -0.2
(read/write) 1316682 1315890 -792 -0.1
.dram0.bss 70528 69984 -544 -0.8
.dram0.data 14284 14276 -8 -0.1
.flash.rodata 178384 178136 -248 -0.1
.flash.text 912384 910336 -2048 -0.2
m5stack (read only) 961223 959371 -1852 -0.2
(read/write) 448848 448056 -792 -0.2
.dram0.bss 74984 74440 -544 -0.7
.flash.rodata 207672 207424 -248 -0.1
.flash.text 955839 953987 -1852 -0.2
k32w light k32w061+release (read/write) 659080 656680 -2400 -0.4
.bss 77136 76608 -528 -0.7
.text 574292 572420 -1872 -0.3
lock k32w061+release (read/write) 661812 659352 -2460 -0.4
.bss 77432 76904 -528 -0.7
.text 576708 574776 -1932 -0.3
linux chip-tool-ipv6only arm64 (read/write) 370641 369345 -1296 -0.3
.bss 55217 53969 -1248 -2.3
.data.rel.ro 245856 245808 -48 -0.0
thermostat-no-ble arm64 (read only) 2042812 2032180 -10632 -0.5
(read/write) 145969 144465 -1504 -1.0
.bss 65089 63841 -1248 -1.9
.data.rel.ro 73016 72768 -248 -0.3
.got 4048 4040 -8 -0.2
.rodata 129884 129492 -392 -0.3
.text 1698336 1688480 -9856 -0.6
mbed all-clusters-app CY8CPROTO_062_4343W+release (read/write) 2350112 2347312 -2800 -0.1
.bss 189220 188692 -528 -0.3
.text 1312688 1309888 -2800 -0.2
lighting-app CY8CPROTO_062_4343W+release (read/write) 2334568 2331704 -2864 -0.1
.bss 180760 180232 -528 -0.3
.text 1297168 1294304 -2864 -0.2
lock-app CY8CPROTO_062_4343W+release (read/write) 2304912 2302120 -2792 -0.1
.bss 179768 179240 -528 -0.3
.text 1267512 1264720 -2792 -0.2
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 943419 940955 -2464 -0.3
bss 119628 119100 -528 -0.4
rodata 108824 108552 -272 -0.2
text 637388 635732 -1656 -0.3
nrf52840dk_nrf52840+rpc (read/write) 928899 926455 -2444 -0.3
bss 116672 116144 -528 -0.5
rodata 101272 101004 -268 -0.3
text 632784 631124 -1660 -0.3
nrf52840dongle_nrf52840 (read/write) 994095 991615 -2480 -0.2
bss 122472 121944 -528 -0.4
rodata 113576 113304 -272 -0.2
text 669588 667928 -1660 -0.2
nrf5340dk_nrf5340_cpuapp (read/write) 853242 850814 -2428 -0.3
bss 116416 115888 -528 -0.5
rodata 101996 101728 -268 -0.3
text 554312 552652 -1660 -0.3
lock-app nrf52840dk_nrf52840 (read/write) 912779 910331 -2448 -0.3
bss 118784 118256 -528 -0.4
rodata 103792 103520 -272 -0.3
text 612836 611176 -1660 -0.3
nrf5340dk_nrf5340_cpuapp (read/write) 822846 820370 -2476 -0.3
bss 115600 115072 -528 -0.5
rodata 97016 96748 -268 -0.3
text 529796 528136 -1660 -0.3
pump-app nrf52840dk_nrf52840 (read/write) 915643 913195 -2448 -0.3
bss 118548 118020 -528 -0.4
rodata 104152 103880 -272 -0.3
text 615492 613832 -1660 -0.3
pump-controller-app nrf52840dk_nrf52840 (read/write) 910715 908251 -2464 -0.3
bss 118572 118044 -528 -0.4
rodata 103264 102992 -272 -0.3
text 611416 609756 -1660 -0.3
p6 all-clusters-app default (read/write) 2405224 2402952 -2272 -0.1
.bss 117556 117028 -528 -0.4
.text 1363488 1361216 -2272 -0.2
light-app default (read/write) 2330080 2327824 -2256 -0.1
.bss 106128 105600 -528 -0.5
.text 1288344 1286088 -2256 -0.2
lock-app default (read/write) 2299104 2296832 -2272 -0.1
.bss 104976 104448 -528 -0.5
.text 1257368 1255096 -2272 -0.2
qpg lighting-app qpg6105+debug (read only) 565088 563432 -1656 -0.3
.bss 89960 89696 -264 -0.3
.text 559768 558112 -1656 -0.3
lock-app qpg6105+debug (read only) 515500 513788 -1712 -0.3
.bss 88584 88320 -264 -0.3
.text 510180 508468 -1712 -0.3
telink lighting-app tlsr9518adk80d (read/write) 840826 838042 -2784 -0.3
bss 87316 86772 -544 -0.6
text 587790 585832 -1958 -0.3
Full report (32 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section d611c63 c2a20b9 change % change
efr32 lighting-app BRD4161A (read only) 834868 832596 -2272 -0.3
(read/write) 127628 127100 -528 -0.4
.bss 125744 125216 -528 -0.4
.data 1884 1884 0 0.0
.text 834860 832588 -2272 -0.3
BRD4161A+rpc (read only) 822264 820000 -2264 -0.3
(read/write) 144288 143760 -528 -0.4
.bss 142304 141776 -528 -0.4
.data 1984 1984 0 0.0
.text 822256 819992 -2264 -0.3
window-app BRD4161A (read only) 805456 803188 -2268 -0.3
(read/write) 126320 125788 -532 -0.4
.bss 124480 123952 -528 -0.4
.data 1836 1836 0 0.0
.text 805448 803180 -2268 -0.3
esp32 all-clusters-app c3devkit (read only) 912384 910336 -2048 -0.2
(read/write) 1316682 1315890 -792 -0.1
.dram0.bss 70528 69984 -544 -0.8
.dram0.data 14284 14276 -8 -0.1
.flash.rodata 178384 178136 -248 -0.1
.flash.text 912384 910336 -2048 -0.2
.iram0.text 62056 62056 0 0.0
m5stack (read only) 961223 959371 -1852 -0.2
(read/write) 448848 448056 -792 -0.2
.dram0.bss 74984 74440 -544 -0.7
.dram0.data 34064 34064 0 0.0
.flash.rodata 207672 207424 -248 -0.1
.flash.text 955839 953987 -1852 -0.2
.iram0.text 123399 123399 0 0.0
k32w light k32w061+release (read/write) 659080 656680 -2400 -0.4
.bss 77136 76608 -528 -0.7
.data 1852 1852 0 0.0
.text 574292 572420 -1872 -0.3
lock k32w061+release (read/write) 661812 659352 -2460 -0.4
.bss 77432 76904 -528 -0.7
.data 1872 1872 0 0.0
.text 576708 574776 -1932 -0.3
linux chip-tool-ipv6only arm64 (read only) 8049492 8050876 1384 0.0
(read/write) 370641 369345 -1296 -0.3
.bss 55217 53969 -1248 -2.3
.data 1096 1096 0 0.0
.data.rel.ro 245856 245808 -48 -0.0
.dynamic 560 560 0 0.0
.got 64776 64776 0 0.0
.init 24 24 0 0.0
.init_array 168 168 0 0.0
.rodata 419420 419428 8 0.0
.text 6841076 6842548 1472 0.0
thermostat-no-ble arm64 (read only) 2042812 2032180 -10632 -0.5
(read/write) 145969 144465 -1504 -1.0
.bss 65089 63841 -1248 -1.9
.data 880 880 0 0.0
.data.rel.ro 73016 72768 -248 -0.3
.dynamic 560 560 0 0.0
.got 4048 4040 -8 -0.2
.init 24 24 0 0.0
.init_array 304 304 0 0.0
.rodata 129884 129492 -392 -0.3
.text 1698336 1688480 -9856 -0.6
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2350112 2347312 -2800 -0.1
.bss 189220 188692 -528 -0.3
.data 5320 5320 0 0.0
.text 1312688 1309888 -2800 -0.2
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2334568 2331704 -2864 -0.1
.bss 180760 180232 -528 -0.3
.data 5568 5568 0 0.0
.text 1297168 1294304 -2864 -0.2
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2304912 2302120 -2792 -0.1
.bss 179768 179240 -528 -0.3
.data 5544 5544 0 0.0
.text 1267512 1264720 -2792 -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) 2054464 2054464 0 0.0
.bss 156876 156876 0 0.0
.data 4864 4864 0 0.0
.text 1017064 1017064 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 943419 940955 -2464 -0.3
bss 119628 119100 -528 -0.4
rodata 108824 108552 -272 -0.2
text 637388 635732 -1656 -0.3
nrf52840dk_nrf52840+rpc (read/write) 928899 926455 -2444 -0.3
bss 116672 116144 -528 -0.5
rodata 101272 101004 -268 -0.3
text 632784 631124 -1660 -0.3
nrf52840dongle_nrf52840 (read/write) 994095 991615 -2480 -0.2
bss 122472 121944 -528 -0.4
rodata 113576 113304 -272 -0.2
text 669588 667928 -1660 -0.2
nrf5340dk_nrf5340_cpuapp (read/write) 853242 850814 -2428 -0.3
bss 116416 115888 -528 -0.5
rodata 101996 101728 -268 -0.3
text 554312 552652 -1660 -0.3
lock-app nrf52840dk_nrf52840 (read/write) 912779 910331 -2448 -0.3
bss 118784 118256 -528 -0.4
rodata 103792 103520 -272 -0.3
text 612836 611176 -1660 -0.3
nrf5340dk_nrf5340_cpuapp (read/write) 822846 820370 -2476 -0.3
bss 115600 115072 -528 -0.5
rodata 97016 96748 -268 -0.3
text 529796 528136 -1660 -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) 915643 913195 -2448 -0.3
bss 118548 118020 -528 -0.4
rodata 104152 103880 -272 -0.3
text 615492 613832 -1660 -0.3
pump-controller-app nrf52840dk_nrf52840 (read/write) 910715 908251 -2464 -0.3
bss 118572 118044 -528 -0.4
rodata 103264 102992 -272 -0.3
text 611416 609756 -1660 -0.3
shell nrf52840dk_nrf52840 (read/write) 798655 798655 0 0.0
bss 109776 109776 0 0.0
rodata 78388 78388 0 0.0
text 533992 533992 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 711470 711470 0 0.0
bss 107664 107664 0 0.0
rodata 72688 72688 0 0.0
text 451668 451668 0 0.0
p6 all-clusters-app default (read/write) 2405224 2402952 -2272 -0.1
.bss 117556 117028 -528 -0.4
.data 2600 2600 0 0.0
.text 1363488 1361216 -2272 -0.2
light-app default (read/write) 2330080 2327824 -2256 -0.1
.bss 106128 105600 -528 -0.5
.data 2392 2392 0 0.0
.text 1288344 1286088 -2256 -0.2
lock-app default (read/write) 2299104 2296832 -2272 -0.1
.bss 104976 104448 -528 -0.5
.data 2344 2344 0 0.0
.text 1257368 1255096 -2272 -0.2
qpg lighting-app qpg6105+debug (read only) 565088 563432 -1656 -0.3
(read/write) 146940 146940 0 0.0
.bss 89960 89696 -264 -0.3
.data 1048 1048 0 0.0
.text 559768 558112 -1656 -0.3
lock-app qpg6105+debug (read only) 515500 513788 -1712 -0.3
(read/write) 146936 146936 0 0.0
.bss 88584 88320 -264 -0.3
.data 972 972 0 0.0
.text 510180 508468 -1712 -0.3
persistent-storage-app qpg6105+debug (read only) 106848 106848 0 0.0
(read/write) 146940 146940 0 0.0
.bss 38512 38512 0 0.0
.data 288 288 0 0.0
.text 101528 101528 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 840826 838042 -2784 -0.3
bss 87316 86772 -544 -0.6
noinit 37160 37160 0 0.0
text 587790 585832 -1958 -0.3

@github-actions
Copy link

github-actions bot commented Jan 18, 2022

PR #13248: Size comparison from d611c63 to f44d883

Increases (1 build for linux)
platform target config section d611c63 f44d883 change % change
linux chip-tool-ipv6only arm64 (read only) 8049492 8050876 1384 0.0
.rodata 419420 419428 8 0.0
.text 6841076 6842548 1472 0.0
Decreases (24 builds for efr32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section d611c63 f44d883 change % change
efr32 lighting-app BRD4161A (read only) 834868 832596 -2272 -0.3
(read/write) 127628 127100 -528 -0.4
.bss 125744 125216 -528 -0.4
.text 834860 832588 -2272 -0.3
BRD4161A+rpc (read only) 822264 820000 -2264 -0.3
(read/write) 144288 143760 -528 -0.4
.bss 142304 141776 -528 -0.4
.text 822256 819992 -2264 -0.3
window-app BRD4161A (read only) 805456 803188 -2268 -0.3
(read/write) 126320 125788 -532 -0.4
.bss 124480 123952 -528 -0.4
.text 805448 803180 -2268 -0.3
k32w light k32w061+release (read/write) 659080 656680 -2400 -0.4
.bss 77136 76608 -528 -0.7
.text 574292 572420 -1872 -0.3
lock k32w061+release (read/write) 661812 659352 -2460 -0.4
.bss 77432 76904 -528 -0.7
.text 576708 574776 -1932 -0.3
linux chip-tool-ipv6only arm64 (read/write) 370641 369345 -1296 -0.3
.bss 55217 53969 -1248 -2.3
.data.rel.ro 245856 245808 -48 -0.0
thermostat-no-ble arm64 (read only) 2042812 2032180 -10632 -0.5
(read/write) 145969 144465 -1504 -1.0
.bss 65089 63841 -1248 -1.9
.data.rel.ro 73016 72768 -248 -0.3
.got 4048 4040 -8 -0.2
.rodata 129884 129492 -392 -0.3
.text 1698336 1688480 -9856 -0.6
mbed all-clusters-app CY8CPROTO_062_4343W+release (read/write) 2350112 2347312 -2800 -0.1
.bss 189220 188692 -528 -0.3
.text 1312688 1309888 -2800 -0.2
lighting-app CY8CPROTO_062_4343W+release (read/write) 2334568 2331704 -2864 -0.1
.bss 180760 180232 -528 -0.3
.text 1297168 1294304 -2864 -0.2
lock-app CY8CPROTO_062_4343W+release (read/write) 2304912 2302120 -2792 -0.1
.bss 179768 179240 -528 -0.3
.text 1267512 1264720 -2792 -0.2
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 943419 940955 -2464 -0.3
bss 119628 119100 -528 -0.4
rodata 108824 108552 -272 -0.2
text 637388 635732 -1656 -0.3
nrf52840dk_nrf52840+rpc (read/write) 928899 926455 -2444 -0.3
bss 116672 116144 -528 -0.5
rodata 101272 101004 -268 -0.3
text 632784 631124 -1660 -0.3
nrf52840dongle_nrf52840 (read/write) 994095 991615 -2480 -0.2
bss 122472 121944 -528 -0.4
rodata 113576 113304 -272 -0.2
text 669588 667928 -1660 -0.2
nrf5340dk_nrf5340_cpuapp (read/write) 853242 850814 -2428 -0.3
bss 116416 115888 -528 -0.5
rodata 101996 101728 -268 -0.3
text 554312 552652 -1660 -0.3
lock-app nrf52840dk_nrf52840 (read/write) 912779 910331 -2448 -0.3
bss 118784 118256 -528 -0.4
rodata 103792 103520 -272 -0.3
text 612836 611176 -1660 -0.3
nrf5340dk_nrf5340_cpuapp (read/write) 822846 820370 -2476 -0.3
bss 115600 115072 -528 -0.5
rodata 97016 96748 -268 -0.3
text 529796 528136 -1660 -0.3
pump-app nrf52840dk_nrf52840 (read/write) 915643 913195 -2448 -0.3
bss 118548 118020 -528 -0.4
rodata 104152 103880 -272 -0.3
text 615492 613832 -1660 -0.3
pump-controller-app nrf52840dk_nrf52840 (read/write) 910715 908251 -2464 -0.3
bss 118572 118044 -528 -0.4
rodata 103264 102992 -272 -0.3
text 611416 609756 -1660 -0.3
p6 all-clusters-app default (read/write) 2405224 2402952 -2272 -0.1
.bss 117556 117028 -528 -0.4
.text 1363488 1361216 -2272 -0.2
light-app default (read/write) 2330080 2327824 -2256 -0.1
.bss 106128 105600 -528 -0.5
.text 1288344 1286088 -2256 -0.2
lock-app default (read/write) 2299104 2296832 -2272 -0.1
.bss 104976 104448 -528 -0.5
.text 1257368 1255096 -2272 -0.2
qpg lighting-app qpg6105+debug (read only) 565088 563432 -1656 -0.3
.bss 89960 89696 -264 -0.3
.text 559768 558112 -1656 -0.3
lock-app qpg6105+debug (read only) 515500 513788 -1712 -0.3
.bss 88584 88320 -264 -0.3
.text 510180 508468 -1712 -0.3
telink lighting-app tlsr9518adk80d (read/write) 840826 838042 -2784 -0.3
bss 87316 86772 -544 -0.6
text 587790 585832 -1958 -0.3
Full report (30 builds for efr32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section d611c63 f44d883 change % change
efr32 lighting-app BRD4161A (read only) 834868 832596 -2272 -0.3
(read/write) 127628 127100 -528 -0.4
.bss 125744 125216 -528 -0.4
.data 1884 1884 0 0.0
.text 834860 832588 -2272 -0.3
BRD4161A+rpc (read only) 822264 820000 -2264 -0.3
(read/write) 144288 143760 -528 -0.4
.bss 142304 141776 -528 -0.4
.data 1984 1984 0 0.0
.text 822256 819992 -2264 -0.3
window-app BRD4161A (read only) 805456 803188 -2268 -0.3
(read/write) 126320 125788 -532 -0.4
.bss 124480 123952 -528 -0.4
.data 1836 1836 0 0.0
.text 805448 803180 -2268 -0.3
k32w light k32w061+release (read/write) 659080 656680 -2400 -0.4
.bss 77136 76608 -528 -0.7
.data 1852 1852 0 0.0
.text 574292 572420 -1872 -0.3
lock k32w061+release (read/write) 661812 659352 -2460 -0.4
.bss 77432 76904 -528 -0.7
.data 1872 1872 0 0.0
.text 576708 574776 -1932 -0.3
linux chip-tool-ipv6only arm64 (read only) 8049492 8050876 1384 0.0
(read/write) 370641 369345 -1296 -0.3
.bss 55217 53969 -1248 -2.3
.data 1096 1096 0 0.0
.data.rel.ro 245856 245808 -48 -0.0
.dynamic 560 560 0 0.0
.got 64776 64776 0 0.0
.init 24 24 0 0.0
.init_array 168 168 0 0.0
.rodata 419420 419428 8 0.0
.text 6841076 6842548 1472 0.0
thermostat-no-ble arm64 (read only) 2042812 2032180 -10632 -0.5
(read/write) 145969 144465 -1504 -1.0
.bss 65089 63841 -1248 -1.9
.data 880 880 0 0.0
.data.rel.ro 73016 72768 -248 -0.3
.dynamic 560 560 0 0.0
.got 4048 4040 -8 -0.2
.init 24 24 0 0.0
.init_array 304 304 0 0.0
.rodata 129884 129492 -392 -0.3
.text 1698336 1688480 -9856 -0.6
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2350112 2347312 -2800 -0.1
.bss 189220 188692 -528 -0.3
.data 5320 5320 0 0.0
.text 1312688 1309888 -2800 -0.2
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2334568 2331704 -2864 -0.1
.bss 180760 180232 -528 -0.3
.data 5568 5568 0 0.0
.text 1297168 1294304 -2864 -0.2
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2304912 2302120 -2792 -0.1
.bss 179768 179240 -528 -0.3
.data 5544 5544 0 0.0
.text 1267512 1264720 -2792 -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) 2054464 2054464 0 0.0
.bss 156876 156876 0 0.0
.data 4864 4864 0 0.0
.text 1017064 1017064 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 943419 940955 -2464 -0.3
bss 119628 119100 -528 -0.4
rodata 108824 108552 -272 -0.2
text 637388 635732 -1656 -0.3
nrf52840dk_nrf52840+rpc (read/write) 928899 926455 -2444 -0.3
bss 116672 116144 -528 -0.5
rodata 101272 101004 -268 -0.3
text 632784 631124 -1660 -0.3
nrf52840dongle_nrf52840 (read/write) 994095 991615 -2480 -0.2
bss 122472 121944 -528 -0.4
rodata 113576 113304 -272 -0.2
text 669588 667928 -1660 -0.2
nrf5340dk_nrf5340_cpuapp (read/write) 853242 850814 -2428 -0.3
bss 116416 115888 -528 -0.5
rodata 101996 101728 -268 -0.3
text 554312 552652 -1660 -0.3
lock-app nrf52840dk_nrf52840 (read/write) 912779 910331 -2448 -0.3
bss 118784 118256 -528 -0.4
rodata 103792 103520 -272 -0.3
text 612836 611176 -1660 -0.3
nrf5340dk_nrf5340_cpuapp (read/write) 822846 820370 -2476 -0.3
bss 115600 115072 -528 -0.5
rodata 97016 96748 -268 -0.3
text 529796 528136 -1660 -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) 915643 913195 -2448 -0.3
bss 118548 118020 -528 -0.4
rodata 104152 103880 -272 -0.3
text 615492 613832 -1660 -0.3
pump-controller-app nrf52840dk_nrf52840 (read/write) 910715 908251 -2464 -0.3
bss 118572 118044 -528 -0.4
rodata 103264 102992 -272 -0.3
text 611416 609756 -1660 -0.3
shell nrf52840dk_nrf52840 (read/write) 798655 798655 0 0.0
bss 109776 109776 0 0.0
rodata 78388 78388 0 0.0
text 533992 533992 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 711470 711470 0 0.0
bss 107664 107664 0 0.0
rodata 72688 72688 0 0.0
text 451668 451668 0 0.0
p6 all-clusters-app default (read/write) 2405224 2402952 -2272 -0.1
.bss 117556 117028 -528 -0.4
.data 2600 2600 0 0.0
.text 1363488 1361216 -2272 -0.2
light-app default (read/write) 2330080 2327824 -2256 -0.1
.bss 106128 105600 -528 -0.5
.data 2392 2392 0 0.0
.text 1288344 1286088 -2256 -0.2
lock-app default (read/write) 2299104 2296832 -2272 -0.1
.bss 104976 104448 -528 -0.5
.data 2344 2344 0 0.0
.text 1257368 1255096 -2272 -0.2
qpg lighting-app qpg6105+debug (read only) 565088 563432 -1656 -0.3
(read/write) 146940 146940 0 0.0
.bss 89960 89696 -264 -0.3
.data 1048 1048 0 0.0
.text 559768 558112 -1656 -0.3
lock-app qpg6105+debug (read only) 515500 513788 -1712 -0.3
(read/write) 146936 146936 0 0.0
.bss 88584 88320 -264 -0.3
.data 972 972 0 0.0
.text 510180 508468 -1712 -0.3
persistent-storage-app qpg6105+debug (read only) 106848 106848 0 0.0
(read/write) 146940 146940 0 0.0
.bss 38512 38512 0 0.0
.data 288 288 0 0.0
.text 101528 101528 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 840826 838042 -2784 -0.3
bss 87316 86772 -544 -0.6
noinit 37160 37160 0 0.0
text 587790 585832 -1958 -0.3

@erjiaqing erjiaqing force-pushed the im/read-write-lifecycle branch 2 times, most recently from 99b8ae5 to 2e86eeb Compare January 19, 2022 07:32
@github-actions
Copy link

github-actions bot commented Jan 19, 2022

PR #13248: Size comparison from 150c479 to 2e86eeb

Increases (1 build for linux)
platform target config section 150c479 2e86eeb change % change
linux chip-tool-ipv6only arm64 (read only) 8123052 8124436 1384 0.0
.rodata 422244 422252 8 0.0
.text 6903140 6904612 1472 0.0
Decreases (26 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 150c479 2e86eeb change % change
efr32 lighting-app BRD4161A (read only) 834948 832684 -2264 -0.3
(read/write) 127636 127108 -528 -0.4
.bss 125744 125216 -528 -0.4
.text 834940 832676 -2264 -0.3
BRD4161A+rpc (read only) 822352 820080 -2272 -0.3
(read/write) 144296 143768 -528 -0.4
.bss 142304 141776 -528 -0.4
.text 822344 820072 -2272 -0.3
window-app BRD4161A (read only) 805536 803268 -2268 -0.3
(read/write) 126328 125796 -532 -0.4
.bss 124480 123952 -528 -0.4
.text 805528 803260 -2268 -0.3
esp32 all-clusters-app c3devkit (read only) 912364 910312 -2052 -0.2
(read/write) 1316698 1315890 -808 -0.1
.dram0.bss 70528 69984 -544 -0.8
.dram0.data 14292 14284 -8 -0.1
.flash.rodata 178384 178136 -248 -0.1
.flash.text 912364 910312 -2052 -0.2
m5stack (read only) 961231 959375 -1856 -0.2
(read/write) 448856 448064 -792 -0.2
.dram0.bss 74984 74440 -544 -0.7
.flash.rodata 207672 207424 -248 -0.1
.flash.text 955847 953991 -1856 -0.2
k32w light k32w061+release (read/write) 659156 656756 -2400 -0.4
.bss 77136 76608 -528 -0.7
.text 574360 572488 -1872 -0.3
lock k32w061+release (read/write) 661888 659444 -2444 -0.4
.bss 77432 76904 -528 -0.7
.text 576776 574860 -1916 -0.3
linux chip-tool-ipv6only arm64 (read/write) 374225 372929 -1296 -0.3
.bss 55217 53969 -1248 -2.3
.data.rel.ro 248696 248648 -48 -0.0
thermostat-no-ble arm64 (read only) 2044156 2033540 -10616 -0.5
(read/write) 145985 144481 -1504 -1.0
.bss 65089 63841 -1248 -1.9
.data.rel.ro 73016 72768 -248 -0.3
.got 4048 4040 -8 -0.2
.rodata 129932 129540 -392 -0.3
.text 1699616 1689776 -9840 -0.6
mbed all-clusters-app CY8CPROTO_062_4343W+release (read/write) 2350176 2347312 -2864 -0.1
.bss 189220 188692 -528 -0.3
.text 1312752 1309888 -2864 -0.2
lighting-app CY8CPROTO_062_4343W+release (read/write) 2334632 2331768 -2864 -0.1
.bss 180760 180232 -528 -0.3
.text 1297232 1294368 -2864 -0.2
lock-app CY8CPROTO_062_4343W+release (read/write) 2304984 2302184 -2800 -0.1
.bss 179768 179240 -528 -0.3
.text 1267584 1264784 -2800 -0.2
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 943491 941031 -2460 -0.3
bss 119628 119100 -528 -0.4
rodata 108824 108556 -268 -0.2
text 637456 635800 -1656 -0.3
nrf52840dk_nrf52840+rpc (read/write) 928975 926527 -2448 -0.3
bss 116672 116144 -528 -0.5
rodata 101276 101004 -272 -0.3
text 632852 631192 -1660 -0.3
nrf52840dongle_nrf52840 (read/write) 994171 991707 -2464 -0.2
bss 122472 121944 -528 -0.4
rodata 113580 113308 -272 -0.2
text 669656 667996 -1660 -0.2
nrf5340dk_nrf5340_cpuapp (read/write) 853334 850890 -2444 -0.3
bss 116416 115888 -528 -0.5
rodata 102000 101732 -268 -0.3
text 554380 552720 -1660 -0.3
lock-app nrf52840dk_nrf52840 (read/write) 912851 910407 -2444 -0.3
bss 118784 118256 -528 -0.4
rodata 103792 103524 -268 -0.3
text 612904 611244 -1660 -0.3
nrf5340dk_nrf5340_cpuapp (read/write) 822922 820442 -2480 -0.3
bss 115600 115072 -528 -0.5
rodata 97020 96748 -272 -0.3
text 529864 528204 -1660 -0.3
pump-app nrf52840dk_nrf52840 (read/write) 915719 913271 -2448 -0.3
bss 118548 118020 -528 -0.4
rodata 104156 103884 -272 -0.3
text 615556 613896 -1660 -0.3
pump-controller-app nrf52840dk_nrf52840 (read/write) 910787 908327 -2460 -0.3
bss 118572 118044 -528 -0.4
rodata 103264 102996 -268 -0.3
text 611480 609820 -1660 -0.3
p6 all-clusters-app default (read/write) 2405304 2403040 -2264 -0.1
.bss 117556 117028 -528 -0.4
.text 1363568 1361304 -2264 -0.2
light-app default (read/write) 2330160 2327912 -2248 -0.1
.bss 106128 105600 -528 -0.5
.text 1288424 1286176 -2248 -0.2
lock-app default (read/write) 2299168 2296896 -2272 -0.1
.bss 104976 104448 -528 -0.5
.text 1257432 1255160 -2272 -0.2
qpg lighting-app qpg6105+debug (read only) 565160 563504 -1656 -0.3
.bss 89960 89696 -264 -0.3
.text 559840 558184 -1656 -0.3
lock-app qpg6105+debug (read only) 515572 513860 -1712 -0.3
.bss 88584 88320 -264 -0.3
.text 510252 508540 -1712 -0.3
telink lighting-app tlsr9518adk80d (read/write) 840902 838118 -2784 -0.3
bss 87316 86772 -544 -0.6
text 587854 585896 -1958 -0.3
Full report (32 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 150c479 2e86eeb change % change
efr32 lighting-app BRD4161A (read only) 834948 832684 -2264 -0.3
(read/write) 127636 127108 -528 -0.4
.bss 125744 125216 -528 -0.4
.data 1892 1892 0 0.0
.text 834940 832676 -2264 -0.3
BRD4161A+rpc (read only) 822352 820080 -2272 -0.3
(read/write) 144296 143768 -528 -0.4
.bss 142304 141776 -528 -0.4
.data 1992 1992 0 0.0
.text 822344 820072 -2272 -0.3
window-app BRD4161A (read only) 805536 803268 -2268 -0.3
(read/write) 126328 125796 -532 -0.4
.bss 124480 123952 -528 -0.4
.data 1844 1844 0 0.0
.text 805528 803260 -2268 -0.3
esp32 all-clusters-app c3devkit (read only) 912364 910312 -2052 -0.2
(read/write) 1316698 1315890 -808 -0.1
.dram0.bss 70528 69984 -544 -0.8
.dram0.data 14292 14284 -8 -0.1
.flash.rodata 178384 178136 -248 -0.1
.flash.text 912364 910312 -2052 -0.2
.iram0.text 62056 62056 0 0.0
m5stack (read only) 961231 959375 -1856 -0.2
(read/write) 448856 448064 -792 -0.2
.dram0.bss 74984 74440 -544 -0.7
.dram0.data 34072 34072 0 0.0
.flash.rodata 207672 207424 -248 -0.1
.flash.text 955847 953991 -1856 -0.2
.iram0.text 123399 123399 0 0.0
k32w light k32w061+release (read/write) 659156 656756 -2400 -0.4
.bss 77136 76608 -528 -0.7
.data 1860 1860 0 0.0
.text 574360 572488 -1872 -0.3
lock k32w061+release (read/write) 661888 659444 -2444 -0.4
.bss 77432 76904 -528 -0.7
.data 1880 1880 0 0.0
.text 576776 574860 -1916 -0.3
linux chip-tool-ipv6only arm64 (read only) 8123052 8124436 1384 0.0
(read/write) 374225 372929 -1296 -0.3
.bss 55217 53969 -1248 -2.3
.data 1112 1112 0 0.0
.data.rel.ro 248696 248648 -48 -0.0
.dynamic 560 560 0 0.0
.got 65504 65504 0 0.0
.init 24 24 0 0.0
.init_array 168 168 0 0.0
.rodata 422244 422252 8 0.0
.text 6903140 6904612 1472 0.0
thermostat-no-ble arm64 (read only) 2044156 2033540 -10616 -0.5
(read/write) 145985 144481 -1504 -1.0
.bss 65089 63841 -1248 -1.9
.data 896 896 0 0.0
.data.rel.ro 73016 72768 -248 -0.3
.dynamic 560 560 0 0.0
.got 4048 4040 -8 -0.2
.init 24 24 0 0.0
.init_array 304 304 0 0.0
.rodata 129932 129540 -392 -0.3
.text 1699616 1689776 -9840 -0.6
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2350176 2347312 -2864 -0.1
.bss 189220 188692 -528 -0.3
.data 5328 5328 0 0.0
.text 1312752 1309888 -2864 -0.2
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2334632 2331768 -2864 -0.1
.bss 180760 180232 -528 -0.3
.data 5576 5576 0 0.0
.text 1297232 1294368 -2864 -0.2
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2304984 2302184 -2800 -0.1
.bss 179768 179240 -528 -0.3
.data 5552 5552 0 0.0
.text 1267584 1264784 -2800 -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) 2054464 2054464 0 0.0
.bss 156876 156876 0 0.0
.data 4864 4864 0 0.0
.text 1017064 1017064 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 943491 941031 -2460 -0.3
bss 119628 119100 -528 -0.4
rodata 108824 108556 -268 -0.2
text 637456 635800 -1656 -0.3
nrf52840dk_nrf52840+rpc (read/write) 928975 926527 -2448 -0.3
bss 116672 116144 -528 -0.5
rodata 101276 101004 -272 -0.3
text 632852 631192 -1660 -0.3
nrf52840dongle_nrf52840 (read/write) 994171 991707 -2464 -0.2
bss 122472 121944 -528 -0.4
rodata 113580 113308 -272 -0.2
text 669656 667996 -1660 -0.2
nrf5340dk_nrf5340_cpuapp (read/write) 853334 850890 -2444 -0.3
bss 116416 115888 -528 -0.5
rodata 102000 101732 -268 -0.3
text 554380 552720 -1660 -0.3
lock-app nrf52840dk_nrf52840 (read/write) 912851 910407 -2444 -0.3
bss 118784 118256 -528 -0.4
rodata 103792 103524 -268 -0.3
text 612904 611244 -1660 -0.3
nrf5340dk_nrf5340_cpuapp (read/write) 822922 820442 -2480 -0.3
bss 115600 115072 -528 -0.5
rodata 97020 96748 -272 -0.3
text 529864 528204 -1660 -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) 915719 913271 -2448 -0.3
bss 118548 118020 -528 -0.4
rodata 104156 103884 -272 -0.3
text 615556 613896 -1660 -0.3
pump-controller-app nrf52840dk_nrf52840 (read/write) 910787 908327 -2460 -0.3
bss 118572 118044 -528 -0.4
rodata 103264 102996 -268 -0.3
text 611480 609820 -1660 -0.3
shell nrf52840dk_nrf52840 (read/write) 798655 798655 0 0.0
bss 109776 109776 0 0.0
rodata 78388 78388 0 0.0
text 533992 533992 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 711470 711470 0 0.0
bss 107664 107664 0 0.0
rodata 72688 72688 0 0.0
text 451668 451668 0 0.0
p6 all-clusters-app default (read/write) 2405304 2403040 -2264 -0.1
.bss 117556 117028 -528 -0.4
.data 2608 2608 0 0.0
.text 1363568 1361304 -2264 -0.2
light-app default (read/write) 2330160 2327912 -2248 -0.1
.bss 106128 105600 -528 -0.5
.data 2400 2400 0 0.0
.text 1288424 1286176 -2248 -0.2
lock-app default (read/write) 2299168 2296896 -2272 -0.1
.bss 104976 104448 -528 -0.5
.data 2352 2352 0 0.0
.text 1257432 1255160 -2272 -0.2
qpg lighting-app qpg6105+debug (read only) 565160 563504 -1656 -0.3
(read/write) 146940 146940 0 0.0
.bss 89960 89696 -264 -0.3
.data 1056 1056 0 0.0
.text 559840 558184 -1656 -0.3
lock-app qpg6105+debug (read only) 515572 513860 -1712 -0.3
(read/write) 146936 146936 0 0.0
.bss 88584 88320 -264 -0.3
.data 980 980 0 0.0
.text 510252 508540 -1712 -0.3
persistent-storage-app qpg6105+debug (read only) 106848 106848 0 0.0
(read/write) 146940 146940 0 0.0
.bss 38512 38512 0 0.0
.data 288 288 0 0.0
.text 101528 101528 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 840902 838118 -2784 -0.3
bss 87316 86772 -544 -0.6
noinit 37160 37160 0 0.0
text 587854 585896 -1958 -0.3

@erjiaqing erjiaqing force-pushed the im/read-write-lifecycle branch from 2e86eeb to b8e59c4 Compare January 19, 2022 09:16
@github-actions
Copy link

github-actions bot commented Jan 19, 2022

PR #13248: Size comparison from 150c479 to b8e59c4

Increases (1 build for linux)
platform target config section 150c479 b8e59c4 change % change
linux chip-tool-ipv6only arm64 (read only) 8123052 8124436 1384 0.0
.rodata 422244 422252 8 0.0
.text 6903140 6904612 1472 0.0
Decreases (26 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 150c479 b8e59c4 change % change
efr32 lighting-app BRD4161A (read only) 834948 832684 -2264 -0.3
(read/write) 127636 127108 -528 -0.4
.bss 125744 125216 -528 -0.4
.text 834940 832676 -2264 -0.3
BRD4161A+rpc (read only) 822352 820080 -2272 -0.3
(read/write) 144296 143768 -528 -0.4
.bss 142304 141776 -528 -0.4
.text 822344 820072 -2272 -0.3
window-app BRD4161A (read only) 805536 803268 -2268 -0.3
(read/write) 126328 125796 -532 -0.4
.bss 124480 123952 -528 -0.4
.text 805528 803260 -2268 -0.3
esp32 all-clusters-app c3devkit (read only) 912364 910312 -2052 -0.2
(read/write) 1316698 1315890 -808 -0.1
.dram0.bss 70528 69984 -544 -0.8
.dram0.data 14292 14284 -8 -0.1
.flash.rodata 178384 178136 -248 -0.1
.flash.text 912364 910312 -2052 -0.2
m5stack (read only) 961231 959375 -1856 -0.2
(read/write) 448856 448064 -792 -0.2
.dram0.bss 74984 74440 -544 -0.7
.flash.rodata 207672 207424 -248 -0.1
.flash.text 955847 953991 -1856 -0.2
k32w light k32w061+release (read/write) 659156 656756 -2400 -0.4
.bss 77136 76608 -528 -0.7
.text 574360 572488 -1872 -0.3
lock k32w061+release (read/write) 661888 659444 -2444 -0.4
.bss 77432 76904 -528 -0.7
.text 576776 574860 -1916 -0.3
linux chip-tool-ipv6only arm64 (read/write) 374225 372929 -1296 -0.3
.bss 55217 53969 -1248 -2.3
.data.rel.ro 248696 248648 -48 -0.0
thermostat-no-ble arm64 (read only) 2044156 2033540 -10616 -0.5
(read/write) 145985 144481 -1504 -1.0
.bss 65089 63841 -1248 -1.9
.data.rel.ro 73016 72768 -248 -0.3
.got 4048 4040 -8 -0.2
.rodata 129932 129540 -392 -0.3
.text 1699616 1689776 -9840 -0.6
mbed all-clusters-app CY8CPROTO_062_4343W+release (read/write) 2350176 2347312 -2864 -0.1
.bss 189220 188692 -528 -0.3
.text 1312752 1309888 -2864 -0.2
lighting-app CY8CPROTO_062_4343W+release (read/write) 2334632 2331768 -2864 -0.1
.bss 180760 180232 -528 -0.3
.text 1297232 1294368 -2864 -0.2
lock-app CY8CPROTO_062_4343W+release (read/write) 2304984 2302184 -2800 -0.1
.bss 179768 179240 -528 -0.3
.text 1267584 1264784 -2800 -0.2
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 943491 941031 -2460 -0.3
bss 119628 119100 -528 -0.4
rodata 108824 108556 -268 -0.2
text 637456 635800 -1656 -0.3
nrf52840dk_nrf52840+rpc (read/write) 928975 926527 -2448 -0.3
bss 116672 116144 -528 -0.5
rodata 101276 101004 -272 -0.3
text 632852 631192 -1660 -0.3
nrf52840dongle_nrf52840 (read/write) 994171 991707 -2464 -0.2
bss 122472 121944 -528 -0.4
rodata 113580 113308 -272 -0.2
text 669656 667996 -1660 -0.2
nrf5340dk_nrf5340_cpuapp (read/write) 853334 850890 -2444 -0.3
bss 116416 115888 -528 -0.5
rodata 102000 101732 -268 -0.3
text 554380 552720 -1660 -0.3
lock-app nrf52840dk_nrf52840 (read/write) 912851 910407 -2444 -0.3
bss 118784 118256 -528 -0.4
rodata 103792 103524 -268 -0.3
text 612904 611244 -1660 -0.3
nrf5340dk_nrf5340_cpuapp (read/write) 822922 820442 -2480 -0.3
bss 115600 115072 -528 -0.5
rodata 97020 96748 -272 -0.3
text 529864 528204 -1660 -0.3
pump-app nrf52840dk_nrf52840 (read/write) 915719 913271 -2448 -0.3
bss 118548 118020 -528 -0.4
rodata 104156 103884 -272 -0.3
text 615556 613896 -1660 -0.3
pump-controller-app nrf52840dk_nrf52840 (read/write) 910787 908327 -2460 -0.3
bss 118572 118044 -528 -0.4
rodata 103264 102996 -268 -0.3
text 611480 609820 -1660 -0.3
p6 all-clusters-app default (read/write) 2405304 2403040 -2264 -0.1
.bss 117556 117028 -528 -0.4
.text 1363568 1361304 -2264 -0.2
light-app default (read/write) 2330160 2327912 -2248 -0.1
.bss 106128 105600 -528 -0.5
.text 1288424 1286176 -2248 -0.2
lock-app default (read/write) 2299168 2296896 -2272 -0.1
.bss 104976 104448 -528 -0.5
.text 1257432 1255160 -2272 -0.2
qpg lighting-app qpg6105+debug (read only) 565160 563504 -1656 -0.3
.bss 89960 89696 -264 -0.3
.text 559840 558184 -1656 -0.3
lock-app qpg6105+debug (read only) 515572 513860 -1712 -0.3
.bss 88584 88320 -264 -0.3
.text 510252 508540 -1712 -0.3
telink lighting-app tlsr9518adk80d (read/write) 840902 838118 -2784 -0.3
bss 87316 86772 -544 -0.6
text 587854 585896 -1958 -0.3
Full report (32 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 150c479 b8e59c4 change % change
efr32 lighting-app BRD4161A (read only) 834948 832684 -2264 -0.3
(read/write) 127636 127108 -528 -0.4
.bss 125744 125216 -528 -0.4
.data 1892 1892 0 0.0
.text 834940 832676 -2264 -0.3
BRD4161A+rpc (read only) 822352 820080 -2272 -0.3
(read/write) 144296 143768 -528 -0.4
.bss 142304 141776 -528 -0.4
.data 1992 1992 0 0.0
.text 822344 820072 -2272 -0.3
window-app BRD4161A (read only) 805536 803268 -2268 -0.3
(read/write) 126328 125796 -532 -0.4
.bss 124480 123952 -528 -0.4
.data 1844 1844 0 0.0
.text 805528 803260 -2268 -0.3
esp32 all-clusters-app c3devkit (read only) 912364 910312 -2052 -0.2
(read/write) 1316698 1315890 -808 -0.1
.dram0.bss 70528 69984 -544 -0.8
.dram0.data 14292 14284 -8 -0.1
.flash.rodata 178384 178136 -248 -0.1
.flash.text 912364 910312 -2052 -0.2
.iram0.text 62056 62056 0 0.0
m5stack (read only) 961231 959375 -1856 -0.2
(read/write) 448856 448064 -792 -0.2
.dram0.bss 74984 74440 -544 -0.7
.dram0.data 34072 34072 0 0.0
.flash.rodata 207672 207424 -248 -0.1
.flash.text 955847 953991 -1856 -0.2
.iram0.text 123399 123399 0 0.0
k32w light k32w061+release (read/write) 659156 656756 -2400 -0.4
.bss 77136 76608 -528 -0.7
.data 1860 1860 0 0.0
.text 574360 572488 -1872 -0.3
lock k32w061+release (read/write) 661888 659444 -2444 -0.4
.bss 77432 76904 -528 -0.7
.data 1880 1880 0 0.0
.text 576776 574860 -1916 -0.3
linux chip-tool-ipv6only arm64 (read only) 8123052 8124436 1384 0.0
(read/write) 374225 372929 -1296 -0.3
.bss 55217 53969 -1248 -2.3
.data 1112 1112 0 0.0
.data.rel.ro 248696 248648 -48 -0.0
.dynamic 560 560 0 0.0
.got 65504 65504 0 0.0
.init 24 24 0 0.0
.init_array 168 168 0 0.0
.rodata 422244 422252 8 0.0
.text 6903140 6904612 1472 0.0
thermostat-no-ble arm64 (read only) 2044156 2033540 -10616 -0.5
(read/write) 145985 144481 -1504 -1.0
.bss 65089 63841 -1248 -1.9
.data 896 896 0 0.0
.data.rel.ro 73016 72768 -248 -0.3
.dynamic 560 560 0 0.0
.got 4048 4040 -8 -0.2
.init 24 24 0 0.0
.init_array 304 304 0 0.0
.rodata 129932 129540 -392 -0.3
.text 1699616 1689776 -9840 -0.6
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2350176 2347312 -2864 -0.1
.bss 189220 188692 -528 -0.3
.data 5328 5328 0 0.0
.text 1312752 1309888 -2864 -0.2
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2334632 2331768 -2864 -0.1
.bss 180760 180232 -528 -0.3
.data 5576 5576 0 0.0
.text 1297232 1294368 -2864 -0.2
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2304984 2302184 -2800 -0.1
.bss 179768 179240 -528 -0.3
.data 5552 5552 0 0.0
.text 1267584 1264784 -2800 -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) 2054464 2054464 0 0.0
.bss 156876 156876 0 0.0
.data 4864 4864 0 0.0
.text 1017064 1017064 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 943491 941031 -2460 -0.3
bss 119628 119100 -528 -0.4
rodata 108824 108556 -268 -0.2
text 637456 635800 -1656 -0.3
nrf52840dk_nrf52840+rpc (read/write) 928975 926527 -2448 -0.3
bss 116672 116144 -528 -0.5
rodata 101276 101004 -272 -0.3
text 632852 631192 -1660 -0.3
nrf52840dongle_nrf52840 (read/write) 994171 991707 -2464 -0.2
bss 122472 121944 -528 -0.4
rodata 113580 113308 -272 -0.2
text 669656 667996 -1660 -0.2
nrf5340dk_nrf5340_cpuapp (read/write) 853334 850890 -2444 -0.3
bss 116416 115888 -528 -0.5
rodata 102000 101732 -268 -0.3
text 554380 552720 -1660 -0.3
lock-app nrf52840dk_nrf52840 (read/write) 912851 910407 -2444 -0.3
bss 118784 118256 -528 -0.4
rodata 103792 103524 -268 -0.3
text 612904 611244 -1660 -0.3
nrf5340dk_nrf5340_cpuapp (read/write) 822922 820442 -2480 -0.3
bss 115600 115072 -528 -0.5
rodata 97020 96748 -272 -0.3
text 529864 528204 -1660 -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) 915719 913271 -2448 -0.3
bss 118548 118020 -528 -0.4
rodata 104156 103884 -272 -0.3
text 615556 613896 -1660 -0.3
pump-controller-app nrf52840dk_nrf52840 (read/write) 910787 908327 -2460 -0.3
bss 118572 118044 -528 -0.4
rodata 103264 102996 -268 -0.3
text 611480 609820 -1660 -0.3
shell nrf52840dk_nrf52840 (read/write) 798655 798655 0 0.0
bss 109776 109776 0 0.0
rodata 78388 78388 0 0.0
text 533992 533992 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 711470 711470 0 0.0
bss 107664 107664 0 0.0
rodata 72688 72688 0 0.0
text 451668 451668 0 0.0
p6 all-clusters-app default (read/write) 2405304 2403040 -2264 -0.1
.bss 117556 117028 -528 -0.4
.data 2608 2608 0 0.0
.text 1363568 1361304 -2264 -0.2
light-app default (read/write) 2330160 2327912 -2248 -0.1
.bss 106128 105600 -528 -0.5
.data 2400 2400 0 0.0
.text 1288424 1286176 -2248 -0.2
lock-app default (read/write) 2299168 2296896 -2272 -0.1
.bss 104976 104448 -528 -0.5
.data 2352 2352 0 0.0
.text 1257432 1255160 -2272 -0.2
qpg lighting-app qpg6105+debug (read only) 565160 563504 -1656 -0.3
(read/write) 146940 146940 0 0.0
.bss 89960 89696 -264 -0.3
.data 1056 1056 0 0.0
.text 559840 558184 -1656 -0.3
lock-app qpg6105+debug (read only) 515572 513860 -1712 -0.3
(read/write) 146936 146936 0 0.0
.bss 88584 88320 -264 -0.3
.data 980 980 0 0.0
.text 510252 508540 -1712 -0.3
persistent-storage-app qpg6105+debug (read only) 106848 106848 0 0.0
(read/write) 146940 146940 0 0.0
.bss 38512 38512 0 0.0
.data 288 288 0 0.0
.text 101528 101528 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 840902 838118 -2784 -0.3
bss 87316 86772 -544 -0.6
noinit 37160 37160 0 0.0
text 587854 585896 -1958 -0.3

src/app/WriteClient.cpp Outdated Show resolved Hide resolved
Co-authored-by: Boris Zbarsky <[email protected]>
src/app/WriteClient.h Outdated Show resolved Hide resolved
@erjiaqing erjiaqing force-pushed the im/read-write-lifecycle branch from 67dda87 to 98ef9dc Compare January 20, 2022 04:58
@github-actions
Copy link

github-actions bot commented Jan 20, 2022

PR #13248: Size comparison from 3853608 to 98ef9dc

Increases (1 build for linux)
platform target config section 3853608 98ef9dc change % change
linux chip-tool-ipv6only arm64 .rodata 422724 422732 8 0.0
Decreases (26 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 3853608 98ef9dc change % change
efr32 lighting-app BRD4161A (read only) 834948 832684 -2264 -0.3
(read/write) 127640 127112 -528 -0.4
.bss 125744 125216 -528 -0.4
.text 834940 832676 -2264 -0.3
BRD4161A+rpc (read only) 822352 820080 -2272 -0.3
(read/write) 144304 143776 -528 -0.4
.bss 142304 141776 -528 -0.4
.text 822344 820072 -2272 -0.3
window-app BRD4161A (read only) 805536 803268 -2268 -0.3
(read/write) 126328 125800 -528 -0.4
.bss 124480 123952 -528 -0.4
.text 805528 803260 -2268 -0.3
esp32 all-clusters-app c3devkit (read only) 912576 910524 -2052 -0.2
(read/write) 1316658 1315850 -808 -0.1
.dram0.bss 70568 70024 -544 -0.8
.dram0.data 14244 14236 -8 -0.1
.flash.rodata 178344 178096 -248 -0.1
.flash.text 912576 910524 -2052 -0.2
m5stack (read only) 961391 959535 -1856 -0.2
(read/write) 448800 448008 -792 -0.2
.dram0.bss 75024 74480 -544 -0.7
.flash.rodata 207616 207368 -248 -0.1
.flash.text 956007 954151 -1856 -0.2
k32w light k32w061+release (read/write) 659096 656696 -2400 -0.4
.bss 77136 76608 -528 -0.7
.text 574296 572424 -1872 -0.3
lock k32w061+release (read/write) 661860 659400 -2460 -0.4
.bss 77432 76904 -528 -0.7
.text 576744 574812 -1932 -0.3
linux chip-tool-ipv6only arm64 (read only) 8144124 8143540 -584 -0.0
(read/write) 374513 373217 -1296 -0.3
.bss 55345 54097 -1248 -2.3
.data.rel.ro 248800 248752 -48 -0.0
.text 6923108 6922612 -496 -0.0
thermostat-no-ble arm64 (read only) 2044108 2033476 -10632 -0.5
(read/write) 145921 144417 -1504 -1.0
.bss 65089 63841 -1248 -1.9
.data.rel.ro 72952 72704 -248 -0.3
.got 4040 4032 -8 -0.2
.rodata 129916 129508 -408 -0.3
.text 1699792 1689952 -9840 -0.6
mbed all-clusters-app CY8CPROTO_062_4343W+release (read/write) 2350304 2347504 -2800 -0.1
.bss 189260 188732 -528 -0.3
.text 1312880 1310080 -2800 -0.2
lighting-app CY8CPROTO_062_4343W+release (read/write) 2334568 2331768 -2800 -0.1
.bss 180760 180232 -528 -0.3
.text 1297168 1294368 -2800 -0.2
lock-app CY8CPROTO_062_4343W+release (read/write) 2304920 2302120 -2800 -0.1
.bss 179768 179240 -528 -0.3
.text 1267520 1264720 -2800 -0.2
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 943427 940967 -2460 -0.3
bss 119628 119100 -528 -0.4
rodata 108760 108492 -268 -0.2
text 637456 635796 -1660 -0.3
nrf52840dk_nrf52840+rpc (read/write) 928911 926463 -2448 -0.3
bss 116672 116144 -528 -0.5
rodata 101212 100940 -272 -0.3
text 632848 631192 -1656 -0.3
nrf52840dongle_nrf52840 (read/write) 994107 991643 -2464 -0.2
bss 122472 121944 -528 -0.4
rodata 113516 113244 -272 -0.2
text 669652 667996 -1656 -0.2
nrf5340dk_nrf5340_cpuapp (read/write) 853254 850826 -2428 -0.3
bss 116416 115888 -528 -0.5
rodata 101936 101668 -268 -0.3
text 554376 552720 -1656 -0.3
lock-app nrf52840dk_nrf52840 (read/write) 912787 910343 -2444 -0.3
bss 118784 118256 -528 -0.4
rodata 103728 103460 -268 -0.3
text 612904 611244 -1660 -0.3
nrf5340dk_nrf5340_cpuapp (read/write) 822858 820378 -2480 -0.3
bss 115600 115072 -528 -0.5
rodata 96956 96684 -272 -0.3
text 529860 528200 -1660 -0.3
pump-app nrf52840dk_nrf52840 (read/write) 915647 913215 -2432 -0.3
bss 118548 118020 -528 -0.4
rodata 104092 103820 -272 -0.3
text 615552 613892 -1660 -0.3
pump-controller-app nrf52840dk_nrf52840 (read/write) 910723 908263 -2460 -0.3
bss 118572 118044 -528 -0.4
rodata 103200 102932 -268 -0.3
text 611480 609820 -1660 -0.3
p6 all-clusters-app default (read/write) 2405904 2403648 -2256 -0.1
.bss 117596 117068 -528 -0.4
.text 1364168 1361912 -2256 -0.2
light-app default (read/write) 2330040 2327768 -2272 -0.1
.bss 106128 105600 -528 -0.5
.text 1288304 1286032 -2272 -0.2
lock-app default (read/write) 2299048 2296792 -2256 -0.1
.bss 104976 104448 -528 -0.5
.text 1257312 1255056 -2256 -0.2
qpg lighting-app qpg6105+debug (read only) 565136 563480 -1656 -0.3
.bss 89960 89696 -264 -0.3
.text 559816 558160 -1656 -0.3
lock-app qpg6105+debug (read only) 515548 513836 -1712 -0.3
.bss 88584 88320 -264 -0.3
.text 510228 508516 -1712 -0.3
telink lighting-app tlsr9518adk80d (read/write) 840794 838018 -2776 -0.3
bss 87316 86772 -544 -0.6
text 587820 585862 -1958 -0.3
Full report (32 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 3853608 98ef9dc change % change
efr32 lighting-app BRD4161A (read only) 834948 832684 -2264 -0.3
(read/write) 127640 127112 -528 -0.4
.bss 125744 125216 -528 -0.4
.data 1896 1896 0 0.0
.text 834940 832676 -2264 -0.3
BRD4161A+rpc (read only) 822352 820080 -2272 -0.3
(read/write) 144304 143776 -528 -0.4
.bss 142304 141776 -528 -0.4
.data 1996 1996 0 0.0
.text 822344 820072 -2272 -0.3
window-app BRD4161A (read only) 805536 803268 -2268 -0.3
(read/write) 126328 125800 -528 -0.4
.bss 124480 123952 -528 -0.4
.data 1848 1848 0 0.0
.text 805528 803260 -2268 -0.3
esp32 all-clusters-app c3devkit (read only) 912576 910524 -2052 -0.2
(read/write) 1316658 1315850 -808 -0.1
.dram0.bss 70568 70024 -544 -0.8
.dram0.data 14244 14236 -8 -0.1
.flash.rodata 178344 178096 -248 -0.1
.flash.text 912576 910524 -2052 -0.2
.iram0.text 62056 62056 0 0.0
m5stack (read only) 961391 959535 -1856 -0.2
(read/write) 448800 448008 -792 -0.2
.dram0.bss 75024 74480 -544 -0.7
.dram0.data 34032 34032 0 0.0
.flash.rodata 207616 207368 -248 -0.1
.flash.text 956007 954151 -1856 -0.2
.iram0.text 123399 123399 0 0.0
k32w light k32w061+release (read/write) 659096 656696 -2400 -0.4
.bss 77136 76608 -528 -0.7
.data 1864 1864 0 0.0
.text 574296 572424 -1872 -0.3
lock k32w061+release (read/write) 661860 659400 -2460 -0.4
.bss 77432 76904 -528 -0.7
.data 1884 1884 0 0.0
.text 576744 574812 -1932 -0.3
linux chip-tool-ipv6only arm64 (read only) 8144124 8143540 -584 -0.0
(read/write) 374513 373217 -1296 -0.3
.bss 55345 54097 -1248 -2.3
.data 1128 1128 0 0.0
.data.rel.ro 248800 248752 -48 -0.0
.dynamic 560 560 0 0.0
.got 65520 65520 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 422724 422732 8 0.0
.text 6923108 6922612 -496 -0.0
thermostat-no-ble arm64 (read only) 2044108 2033476 -10632 -0.5
(read/write) 145921 144417 -1504 -1.0
.bss 65089 63841 -1248 -1.9
.data 904 904 0 0.0
.data.rel.ro 72952 72704 -248 -0.3
.dynamic 560 560 0 0.0
.got 4040 4032 -8 -0.2
.init 24 24 0 0.0
.init_array 304 304 0 0.0
.rodata 129916 129508 -408 -0.3
.text 1699792 1689952 -9840 -0.6
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2350304 2347504 -2800 -0.1
.bss 189260 188732 -528 -0.3
.data 5296 5296 0 0.0
.text 1312880 1310080 -2800 -0.2
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2334568 2331768 -2800 -0.1
.bss 180760 180232 -528 -0.3
.data 5576 5576 0 0.0
.text 1297168 1294368 -2800 -0.2
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2304920 2302120 -2800 -0.1
.bss 179768 179240 -528 -0.3
.data 5552 5552 0 0.0
.text 1267520 1264720 -2800 -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) 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) 943427 940967 -2460 -0.3
bss 119628 119100 -528 -0.4
rodata 108760 108492 -268 -0.2
text 637456 635796 -1660 -0.3
nrf52840dk_nrf52840+rpc (read/write) 928911 926463 -2448 -0.3
bss 116672 116144 -528 -0.5
rodata 101212 100940 -272 -0.3
text 632848 631192 -1656 -0.3
nrf52840dongle_nrf52840 (read/write) 994107 991643 -2464 -0.2
bss 122472 121944 -528 -0.4
rodata 113516 113244 -272 -0.2
text 669652 667996 -1656 -0.2
nrf5340dk_nrf5340_cpuapp (read/write) 853254 850826 -2428 -0.3
bss 116416 115888 -528 -0.5
rodata 101936 101668 -268 -0.3
text 554376 552720 -1656 -0.3
lock-app nrf52840dk_nrf52840 (read/write) 912787 910343 -2444 -0.3
bss 118784 118256 -528 -0.4
rodata 103728 103460 -268 -0.3
text 612904 611244 -1660 -0.3
nrf5340dk_nrf5340_cpuapp (read/write) 822858 820378 -2480 -0.3
bss 115600 115072 -528 -0.5
rodata 96956 96684 -272 -0.3
text 529860 528200 -1660 -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) 915647 913215 -2432 -0.3
bss 118548 118020 -528 -0.4
rodata 104092 103820 -272 -0.3
text 615552 613892 -1660 -0.3
pump-controller-app nrf52840dk_nrf52840 (read/write) 910723 908263 -2460 -0.3
bss 118572 118044 -528 -0.4
rodata 103200 102932 -268 -0.3
text 611480 609820 -1660 -0.3
shell nrf52840dk_nrf52840 (read/write) 798479 798479 0 0.0
bss 109776 109776 0 0.0
rodata 78324 78324 0 0.0
text 533872 533872 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 711278 711278 0 0.0
bss 107664 107664 0 0.0
rodata 72624 72624 0 0.0
text 451548 451548 0 0.0
p6 all-clusters-app default (read/write) 2405904 2403648 -2256 -0.1
.bss 117596 117068 -528 -0.4
.data 2568 2568 0 0.0
.text 1364168 1361912 -2256 -0.2
light-app default (read/write) 2330040 2327768 -2272 -0.1
.bss 106128 105600 -528 -0.5
.data 2408 2408 0 0.0
.text 1288304 1286032 -2272 -0.2
lock-app default (read/write) 2299048 2296792 -2256 -0.1
.bss 104976 104448 -528 -0.5
.data 2352 2352 0 0.0
.text 1257312 1255056 -2256 -0.2
qpg lighting-app qpg6105+debug (read only) 565136 563480 -1656 -0.3
(read/write) 146936 146936 0 0.0
.bss 89960 89696 -264 -0.3
.data 1060 1060 0 0.0
.text 559816 558160 -1656 -0.3
lock-app qpg6105+debug (read only) 515548 513836 -1712 -0.3
(read/write) 146940 146940 0 0.0
.bss 88584 88320 -264 -0.3
.data 984 984 0 0.0
.text 510228 508516 -1712 -0.3
persistent-storage-app qpg6105+debug (read only) 106848 106848 0 0.0
(read/write) 146940 146940 0 0.0
.bss 38512 38512 0 0.0
.data 288 288 0 0.0
.text 101528 101528 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 840794 838018 -2776 -0.3
bss 87316 86772 -544 -0.6
noinit 37160 37160 0 0.0
text 587820 585862 -1958 -0.3

@erjiaqing erjiaqing merged commit 6e99beb into project-chip:master Jan 20, 2022
@erjiaqing erjiaqing deleted the im/read-write-lifecycle branch January 20, 2022 06:43
vivien-apple added a commit to vivien-apple/connectedhomeip-1 that referenced this pull request Jan 20, 2022
selissia pushed a commit to selissia/connectedhomeip that referenced this pull request Jan 28, 2022
…-chip#13248)

* [IM] Move ownership of WriteClient to application

* Update src/app/WriteClient.cpp

Co-authored-by: Boris Zbarsky <[email protected]>

* Move Init to private

Co-authored-by: Boris Zbarsky <[email protected]>
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.

Make number of command/read/write client/handler configurable
8 participants