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

Add support for caching events to the AttributeCache #17030

Merged
merged 8 commits into from
Apr 14, 2022

Conversation

mrjerryjohns
Copy link
Contributor

@mrjerryjohns mrjerryjohns commented Apr 5, 2022

Problem

This adds support for caching events to the AttributeCache, now re-named to ClusterStateCache to better describe its responsibilities that encompass both attributes and events.

This is meant to unblock the event counterpart to #16602 so that re-subscriptions don't result in an avalanche of events.

The cache is backed by a std::set of a std::pair consisting of an EventHeader and the payload (encapsulated as a PacketBufferHandle).

Methods have been provided to iterate over the events in the cache in increasing order of event number.

Tests

A TestEventCaching test has been added that does an end-to-end test of a read involving events to validate the caching behavior.

@mrjerryjohns mrjerryjohns linked an issue Apr 5, 2022 that may be closed by this pull request
@github-actions
Copy link

github-actions bot commented Apr 5, 2022

PR #17030: Size comparison from 01aa957 to 2578bd8

Increases above 0.2%:

platform target config section 01aa957 2578bd8 change % change
linux tv-app debug (read only) 2749033 2760025 10992 0.4
.text 2359026 2369986 10960 0.5
Increases (4 builds for linux)
platform target config section 01aa957 2578bd8 change % change
linux chip-tool debug (read only) 10468101 10479109 11008 0.1
.rodata 532653 532685 32 0.0
.text 9117109 9128085 10976 0.1
chip-tool-no-interactive-ipv6only arm64 (read only) 10068788 10079828 11040 0.1
.rodata 506772 506820 48 0.0
.text 8471796 8482788 10992 0.1
ota-requestor-app debug (read only) 2028745 2028761 16 0.0
.text 1704738 1704754 16 0.0
tv-app debug (read only) 2749033 2760025 10992 0.4
.rodata 211371 211403 32 0.0
.text 2359026 2369986 10960 0.5
Full report (31 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 01aa957 2578bd8 change % change
cc13x2_26x2 lock-ftd LP_CC2652R7 (read only) 668487 668487 0 0.0
(read/write) 183224 183224 0 0.0
.bss 81752 81752 0 0.0
.data 3164 3164 0 0.0
.rodata 79767 79767 0 0.0
.text 588240 588240 0 0.0
lock-mtd LP_CC2652R7 (read only) 617615 617615 0 0.0
(read/write) 154500 154500 0 0.0
.bss 77480 77480 0 0.0
.data 3164 3164 0 0.0
.rodata 79655 79655 0 0.0
.text 537472 537472 0 0.0
pump-app LP_CC2652R7 (read only) 687955 687955 0 0.0
(read/write) 164924 164924 0 0.0
.bss 82152 82152 0 0.0
.data 3196 3196 0 0.0
.rodata 81851 81851 0 0.0
.text 605620 605620 0 0.0
pump-controller-app LP_CC2652R7 (read only) 670187 670187 0 0.0
(read/write) 182428 182428 0 0.0
.bss 81888 81888 0 0.0
.data 3160 3160 0 0.0
.rodata 78187 78187 0 0.0
.text 591516 591516 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 611058 611058 0 0.0
.app_xip_area 517768 517768 0 0.0
.bss 76004 76004 0 0.0
.data 632 632 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 568574 568574 0 0.0
.app_xip_area 476828 476828 0 0.0
.bss 74500 74500 0 0.0
.data 596 596 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 580258 580258 0 0.0
.app_xip_area 478868 478868 0 0.0
.bss 83816 83816 0 0.0
.data 536 536 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 916404 916404 0 0.0
(read/write) 129784 129784 0 0.0
.bss 127792 127792 0 0.0
.data 1992 1992 0 0.0
.text 916396 916396 0 0.0
BRD4161A+rpc (read only) 944300 944300 0 0.0
(read/write) 145732 145732 0 0.0
.bss 143560 143560 0 0.0
.data 2172 2172 0 0.0
.text 944292 944292 0 0.0
window-app BRD4161A (read only) 851620 851620 0 0.0
(read/write) 127808 127808 0 0.0
.bss 125936 125936 0 0.0
.data 1872 1872 0 0.0
.text 851612 851612 0 0.0
esp32 all-clusters-app c3devkit (read only) 986106 986106 0 0.0
(read/write) 1460666 1460666 0 0.0
.dram0.bss 62944 62944 0 0.0
.dram0.data 14196 14196 0 0.0
.flash.rodata 198048 198048 0 0.0
.flash.text 986106 986106 0 0.0
.iram0.text 62572 62572 0 0.0
m5stack (read only) 1038563 1038563 0 0.0
(read/write) 461688 461688 0 0.0
.dram0.bss 68472 68472 0 0.0
.dram0.data 34056 34056 0 0.0
.flash.rodata 227016 227016 0 0.0
.flash.text 1033179 1033179 0 0.0
.iram0.text 123415 123415 0 0.0
k32w light k32w061+release (read/write) 708352 708352 0 0.0
.bss 77952 77952 0 0.0
.data 1904 1904 0 0.0
.text 622696 622696 0 0.0
lock k32w061+release (read/write) 707760 707760 0 0.0
.bss 77952 77952 0 0.0
.data 1944 1944 0 0.0
.text 622064 622064 0 0.0
linux all-clusters-app debug (read only) 2580441 2580441 0 0.0
(read/write) 144744 144744 0 0.0
.bss 57632 57632 0 0.0
.data 1440 1440 0 0.0
.data.rel.ro 79784 79784 0 0.0
.dynamic 592 592 0 0.0
.got 4312 4312 0 0.0
.init 27 27 0 0.0
.init_array 960 960 0 0.0
.rodata 221157 221157 0 0.0
.text 2191458 2191458 0 0.0
bridge-app debug+rpc (read only) 1790421 1790421 0 0.0
(read/write) 90200 90200 0 0.0
.bss 44552 44552 0 0.0
.data 2048 2048 0 0.0
.data.rel.ro 38520 38520 0 0.0
.dynamic 592 592 0 0.0
.got 3928 3928 0 0.0
.init 27 27 0 0.0
.init_array 552 552 0 0.0
.rodata 147385 147385 0 0.0
.text 1526597 1526597 0 0.0
chip-tool debug (read only) 10468101 10479109 11008 0.1
(read/write) 367128 367128 0 0.0
.bss 22016 22016 0 0.0
.data 1040 1040 0 0.0
.data.rel.ro 337848 337848 0 0.0
.dynamic 624 624 0 0.0
.got 4920 4920 0 0.0
.init 27 27 0 0.0
.init_array 656 656 0 0.0
.rodata 532653 532685 32 0.0
.text 9117109 9128085 10976 0.1
chip-tool-no-interactive-ipv6only arm64 (read only) 10068788 10079828 11040 0.1
(read/write) 486769 486769 0 0.0
.bss 40337 40337 0 0.0
.data 1128 1128 0 0.0
.data.rel.ro 384712 384712 0 0.0
.dynamic 560 560 0 0.0
.got 56800 56800 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 506772 506820 48 0.0
.text 8471796 8482788 10992 0.1
door-lock-app debug (read only) 2061425 2061425 0 0.0
(read/write) 118160 118160 0 0.0
.bss 47872 47872 0 0.0
.data 1152 1152 0 0.0
.data.rel.ro 63592 63592 0 0.0
.dynamic 592 592 0 0.0
.got 4256 4256 0 0.0
.init 27 27 0 0.0
.init_array 680 680 0 0.0
.rodata 185417 185417 0 0.0
.text 1722386 1722386 0 0.0
lighting-app debug+rpc (read only) 2239945 2239945 0 0.0
(read/write) 125152 125152 0 0.0
.bss 49184 49184 0 0.0
.data 1600 1600 0 0.0
.data.rel.ro 68680 68680 0 0.0
.dynamic 608 608 0 0.0
.got 4304 4304 0 0.0
.init 27 27 0 0.0
.init_array 760 760 0 0.0
.rodata 179529 179529 0 0.0
.text 1897330 1897330 0 0.0
ota-provider-app debug (read only) 1999457 1999457 0 0.0
(read/write) 113760 113760 0 0.0
.bss 47712 47712 0 0.0
.data 1384 1384 0 0.0
.data.rel.ro 58936 58936 0 0.0
.dynamic 608 608 0 0.0
.got 4456 4456 0 0.0
.init 27 27 0 0.0
.init_array 632 632 0 0.0
.rodata 171307 171307 0 0.0
.text 1673618 1673618 0 0.0
ota-requestor-app debug (read only) 2028745 2028761 16 0.0
(read/write) 117016 117016 0 0.0
.bss 48704 48704 0 0.0
.data 1608 1608 0 0.0
.data.rel.ro 61128 61128 0 0.0
.dynamic 592 592 0 0.0
.got 4296 4296 0 0.0
.init 27 27 0 0.0
.init_array 656 656 0 0.0
.rodata 167796 167796 0 0.0
.text 1704738 1704754 16 0.0
shell debug (read only) 2477401 2477401 0 0.0
(read/write) 148208 148208 0 0.0
.bss 67304 67304 0 0.0
.data 848 848 0 0.0
.data.rel.ro 74328 74328 0 0.0
.dynamic 592 592 0 0.0
.got 4160 4160 0 0.0
.init 27 27 0 0.0
.init_array 928 928 0 0.0
.rodata 212818 212818 0 0.0
.text 2106242 2106242 0 0.0
thermostat-no-ble arm64 (read only) 2314188 2314188 0 0.0
(read/write) 149361 149361 0 0.0
.bss 62945 62945 0 0.0
.data 1136 1136 0 0.0
.data.rel.ro 77640 77640 0 0.0
.dynamic 560 560 0 0.0
.got 4624 4624 0 0.0
.init 24 24 0 0.0
.init_array 368 368 0 0.0
.rodata 143148 143148 0 0.0
.text 1945440 1945440 0 0.0
tv-app debug (read only) 2749033 2760025 10992 0.4
(read/write) 249856 249856 0 0.0
.bss 165328 165328 0 0.0
.data 3392 3392 0 0.0
.data.rel.ro 74944 74944 0 0.0
.dynamic 592 592 0 0.0
.got 4672 4672 0 0.0
.init 27 27 0 0.0
.init_array 904 904 0 0.0
.rodata 211371 211403 32 0.0
.text 2359026 2369986 10960 0.5
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2360596 2360596 0 0.0
.bss 185036 185036 0 0.0
.data 5784 5784 0 0.0
.text 1323196 1323196 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1149215 1149215 0 0.0
bss 143060 143060 0 0.0
rodata 143384 143384 0 0.0
text 787892 787892 0 0.0
p6 all-clusters-app default (read/write) 2504768 2504768 0 0.0
.bss 118472 118472 0 0.0
.data 2672 2672 0 0.0
.text 1463032 1463032 0 0.0
light-app default (read/write) 2405960 2405960 0 0.0
.bss 111928 111928 0 0.0
.data 2528 2528 0 0.0
.text 1364224 1364224 0 0.0
lock-app default (read/write) 2369592 2369592 0 0.0
.bss 111672 111672 0 0.0
.data 2488 2488 0 0.0
.text 1327856 1327856 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 792620 792620 0 0.0
bss 70288 70288 0 0.0
noinit 40416 40416 0 0.0
text 562384 562384 0 0.0

src/app/ClusterStateCache.cpp Outdated Show resolved Hide resolved
src/app/ClusterStateCache.cpp Show resolved Hide resolved
src/app/ClusterStateCache.cpp Show resolved Hide resolved
src/app/ClusterStateCache.cpp Show resolved Hide resolved
src/app/ClusterStateCache.h Outdated Show resolved Hide resolved
src/app/ClusterStateCache.h Outdated Show resolved Hide resolved
src/app/ClusterStateCache.h Show resolved Hide resolved
src/app/ClusterStateCache.h Show resolved Hide resolved
src/app/ClusterStateCache.h Show resolved Hide resolved
@github-actions
Copy link

github-actions bot commented Apr 13, 2022

PR #17030: Size comparison from c2a4218 to 5e76748

Increases above 0.2%:

platform target config section c2a42189 5e76748 change % change
linux tv-app debug (read only) 2797569 2808481 10912 0.4
.text 2402946 2413826 10880 0.5
Increases (3 builds for linux)
platform target config section c2a42189 5e76748 change % change
linux chip-tool debug (read only) 10684389 10695349 10960 0.1
.rodata 539093 539157 64 0.0
.text 9315989 9326885 10896 0.1
chip-tool-no-interactive-ipv6only arm64 (read only) 10283860 10294868 11008 0.1
.rodata 513140 513188 48 0.0
.text 8667300 8678260 10960 0.1
tv-app debug (read only) 2797569 2808481 10912 0.4
.rodata 213323 213355 32 0.0
.text 2402946 2413826 10880 0.5
Decreases (2 builds for esp32)
platform target config section c2a42189 5e76748 change % change
esp32 all-clusters-app c3devkit (read only) 979980 979978 -2 -0.0
.flash.text 979980 979978 -2 -0.0
m5stack (read only) 1035487 1035467 -20 -0.0
.flash.text 1030103 1030083 -20 -0.0
Full report (31 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section c2a42189 5e76748 change % change
cc13x2_26x2 lock-ftd LP_CC2652R7 (read only) 640303 640303 0 0.0
(read/write) 151220 151220 0 0.0
.bss 74152 74152 0 0.0
.data 3212 3212 0 0.0
.rodata 80127 80127 0 0.0
.text 559684 559684 0 0.0
lock-mtd LP_CC2652R7 (read only) 589039 589039 0 0.0
(read/write) 146940 146940 0 0.0
.bss 69872 69872 0 0.0
.data 3212 3212 0 0.0
.rodata 80007 80007 0 0.0
.text 508540 508540 0 0.0
pump-app LP_CC2652R7 (read only) 648403 648403 0 0.0
(read/write) 152516 152516 0 0.0
.bss 74648 74648 0 0.0
.data 3244 3244 0 0.0
.rodata 75363 75363 0 0.0
.text 572552 572552 0 0.0
pump-controller-app LP_CC2652R7 (read only) 642351 642351 0 0.0
(read/write) 152184 152184 0 0.0
.bss 74352 74352 0 0.0
.data 3208 3208 0 0.0
.rodata 78951 78951 0 0.0
.text 562912 562912 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 618950 618950 0 0.0
.app_xip_area 525652 525652 0 0.0
.bss 75964 75964 0 0.0
.data 684 684 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 576542 576542 0 0.0
.app_xip_area 484780 484780 0 0.0
.bss 74460 74460 0 0.0
.data 648 648 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 565146 565146 0 0.0
.app_xip_area 463756 463756 0 0.0
.bss 83792 83792 0 0.0
.data 564 564 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 907972 907972 0 0.0
(read/write) 133152 133152 0 0.0
.bss 131112 131112 0 0.0
.data 2040 2040 0 0.0
.text 907964 907964 0 0.0
BRD4161A+rpc (read only) 942348 942348 0 0.0
(read/write) 149836 149836 0 0.0
.bss 147592 147592 0 0.0
.data 2244 2244 0 0.0
.text 942340 942340 0 0.0
window-app BRD4161A (read only) 844628 844628 0 0.0
(read/write) 131156 131156 0 0.0
.bss 129208 129208 0 0.0
.data 1948 1948 0 0.0
.text 844620 844620 0 0.0
esp32 all-clusters-app c3devkit (read only) 979980 979978 -2 -0.0
(read/write) 1397594 1397594 0 0.0
.dram0.bss 62632 62632 0 0.0
.dram0.data 14420 14420 0 0.0
.flash.rodata 201616 201616 0 0.0
.flash.text 979980 979978 -2 -0.0
.iram0.text 62016 62016 0 0.0
m5stack (read only) 1035487 1035467 -20 -0.0
(read/write) 465324 465324 0 0.0
.dram0.bss 68152 68152 0 0.0
.dram0.data 34152 34152 0 0.0
.flash.rodata 231184 231184 0 0.0
.flash.text 1030103 1030083 -20 -0.0
.iram0.text 123107 123107 0 0.0
k32w light k32w061+release (read/write) 687212 687212 0 0.0
.bss 78136 78136 0 0.0
.data 2036 2036 0 0.0
.text 601240 601240 0 0.0
lock k32w061+release (read/write) 691800 691800 0 0.0
.bss 78712 78712 0 0.0
.data 1996 1996 0 0.0
.text 605292 605292 0 0.0
linux all-clusters-app debug (read only) 2697873 2697873 0 0.0
(read/write) 149248 149248 0 0.0
.bss 60224 60224 0 0.0
.data 1888 1888 0 0.0
.data.rel.ro 81080 81080 0 0.0
.dynamic 608 608 0 0.0
.got 4456 4456 0 0.0
.init 27 27 0 0.0
.init_array 984 984 0 0.0
.rodata 232421 232421 0 0.0
.text 2291458 2291458 0 0.0
bridge-app debug+rpc (read only) 1837597 1837597 0 0.0
(read/write) 91856 91856 0 0.0
.bss 44480 44480 0 0.0
.data 2912 2912 0 0.0
.data.rel.ro 39376 39376 0 0.0
.dynamic 592 592 0 0.0
.got 3936 3936 0 0.0
.init 27 27 0 0.0
.init_array 552 552 0 0.0
.rodata 148505 148505 0 0.0
.text 1570661 1570661 0 0.0
chip-tool debug (read only) 10684389 10695349 10960 0.1
(read/write) 371832 371832 0 0.0
.bss 22752 22752 0 0.0
.data 1104 1104 0 0.0
.data.rel.ro 341728 341728 0 0.0
.dynamic 624 624 0 0.0
.got 4936 4936 0 0.0
.init 27 27 0 0.0
.init_array 656 656 0 0.0
.rodata 539093 539157 64 0.0
.text 9315989 9326885 10896 0.1
chip-tool-no-interactive-ipv6only arm64 (read only) 10283860 10294868 11008 0.1
(read/write) 492273 492273 0 0.0
.bss 41025 41025 0 0.0
.data 1168 1168 0 0.0
.data.rel.ro 388840 388840 0 0.0
.dynamic 560 560 0 0.0
.got 57440 57440 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 513140 513188 48 0.0
.text 8667300 8678260 10960 0.1
door-lock-app debug (read only) 2108849 2108849 0 0.0
(read/write) 119600 119600 0 0.0
.bss 48064 48064 0 0.0
.data 1472 1472 0 0.0
.data.rel.ro 64504 64504 0 0.0
.dynamic 592 592 0 0.0
.got 4264 4264 0 0.0
.init 27 27 0 0.0
.init_array 680 680 0 0.0
.rodata 186697 186697 0 0.0
.text 1766450 1766450 0 0.0
lighting-app debug+rpc (read only) 2313385 2313385 0 0.0
(read/write) 127952 127952 0 0.0
.bss 50304 50304 0 0.0
.data 1952 1952 0 0.0
.data.rel.ro 69992 69992 0 0.0
.dynamic 608 608 0 0.0
.got 4312 4312 0 0.0
.init 27 27 0 0.0
.init_array 776 776 0 0.0
.rodata 182601 182601 0 0.0
.text 1964946 1964946 0 0.0
ota-provider-app debug (read only) 2046009 2046009 0 0.0
(read/write) 115296 115296 0 0.0
.bss 48224 48224 0 0.0
.data 1608 1608 0 0.0
.data.rel.ro 59720 59720 0 0.0
.dynamic 608 608 0 0.0
.got 4464 4464 0 0.0
.init 27 27 0 0.0
.init_array 632 632 0 0.0
.rodata 172547 172547 0 0.0
.text 1717250 1717250 0 0.0
ota-requestor-app debug (read only) 2076441 2076441 0 0.0
(read/write) 118392 118392 0 0.0
.bss 48960 48960 0 0.0
.data 1864 1864 0 0.0
.data.rel.ro 61960 61960 0 0.0
.dynamic 592 592 0 0.0
.got 4304 4304 0 0.0
.init 27 27 0 0.0
.init_array 656 656 0 0.0
.rodata 169388 169388 0 0.0
.text 1748994 1748994 0 0.0
shell debug (read only) 2525745 2525745 0 0.0
(read/write) 150064 150064 0 0.0
.bss 67624 67624 0 0.0
.data 1264 1264 0 0.0
.data.rel.ro 75464 75464 0 0.0
.dynamic 592 592 0 0.0
.got 4168 4168 0 0.0
.init 27 27 0 0.0
.init_array 928 928 0 0.0
.rodata 214738 214738 0 0.0
.text 2149842 2149842 0 0.0
thermostat-no-ble arm64 (read only) 2353508 2353508 0 0.0
(read/write) 151137 151137 0 0.0
.bss 63169 63169 0 0.0
.data 1424 1424 0 0.0
.data.rel.ro 78752 78752 0 0.0
.dynamic 560 560 0 0.0
.got 4768 4768 0 0.0
.init 24 24 0 0.0
.init_array 368 368 0 0.0
.rodata 144548 144548 0 0.0
.text 1980384 1980384 0 0.0
tv-app debug (read only) 2797569 2808481 10912 0.4
(read/write) 250784 250784 0 0.0
.bss 164112 164112 0 0.0
.data 4448 4448 0 0.0
.data.rel.ro 76008 76008 0 0.0
.dynamic 592 592 0 0.0
.got 4688 4688 0 0.0
.init 27 27 0 0.0
.init_array 904 904 0 0.0
.rodata 213323 213355 32 0.0
.text 2402946 2413826 10880 0.5
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2369476 2369476 0 0.0
.bss 185244 185244 0 0.0
.data 5840 5840 0 0.0
.text 1332076 1332076 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1163347 1163347 0 0.0
bss 136536 136536 0 0.0
rodata 147268 147268 0 0.0
text 800924 800924 0 0.0
p6 all-clusters-app default (read/write) 2515200 2515200 0 0.0
.bss 118648 118648 0 0.0
.data 2768 2768 0 0.0
.text 1473464 1473464 0 0.0
light-app default (read/write) 2415656 2415656 0 0.0
.bss 112144 112144 0 0.0
.data 2576 2576 0 0.0
.text 1373920 1373920 0 0.0
lock-app default (read/write) 2379224 2379224 0 0.0
.bss 111888 111888 0 0.0
.data 2536 2536 0 0.0
.text 1337488 1337488 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 801368 801368 0 0.0
bss 69996 69996 0 0.0
noinit 40416 40416 0 0.0
text 570074 570074 0 0.0

src/app/ClusterStateCache.h Outdated Show resolved Hide resolved
src/app/ClusterStateCache.h Outdated Show resolved Hide resolved
src/app/ClusterStateCache.h Outdated Show resolved Hide resolved
src/app/ClusterStateCache.h Outdated Show resolved Hide resolved
src/app/ClusterStateCache.h Outdated Show resolved Hide resolved
src/app/ClusterStateCache.cpp Outdated Show resolved Hide resolved
src/app/ClusterStateCache.h Outdated Show resolved Hide resolved
mrjerryjohns and others added 2 commits April 14, 2022 11:15
@github-actions
Copy link

PR #17030: Size comparison from 1581c6d to c19caf3

Increases (1 build for linux)
platform target config section 1581c6d c19caf3 change % change
linux chip-tool-no-interactive-ipv6only arm64 (read only) 10367220 10378244 11024 0.1
.rodata 513492 513540 48 0.0
.text 8748820 8759796 10976 0.1
Full report (23 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 1581c6d c19caf3 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 683431 683431 0 0.0
(read/write) 169736 169736 0 0.0
.bss 76152 76152 0 0.0
.data 3380 3380 0 0.0
.rodata 102911 102911 0 0.0
.text 580040 580040 0 0.0
lock-ftd LP_CC2652R7 (read only) 676479 676479 0 0.0
(read/write) 167648 167648 0 0.0
.bss 74168 74168 0 0.0
.data 3212 3212 0 0.0
.rodata 98535 98535 0 0.0
.text 577460 577460 0 0.0
lock-mtd LP_CC2652R7 (read only) 625231 625231 0 0.0
(read/write) 146956 146956 0 0.0
.bss 69888 69888 0 0.0
.data 3212 3212 0 0.0
.rodata 98415 98415 0 0.0
.text 526324 526324 0 0.0
pump-app LP_CC2652R7 (read only) 648715 648715 0 0.0
(read/write) 152492 152492 0 0.0
.bss 74624 74624 0 0.0
.data 3244 3244 0 0.0
.rodata 75419 75419 0 0.0
.text 572808 572808 0 0.0
pump-controller-app LP_CC2652R7 (read only) 641975 641975 0 0.0
(read/write) 152160 152160 0 0.0
.bss 74328 74328 0 0.0
.data 3208 3208 0 0.0
.rodata 78695 78695 0 0.0
.text 562792 562792 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 618654 618654 0 0.0
.app_xip_area 525404 525404 0 0.0
.bss 75916 75916 0 0.0
.data 684 684 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 612902 612902 0 0.0
.app_xip_area 521156 521156 0 0.0
.bss 74444 74444 0 0.0
.data 648 648 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 565346 565346 0 0.0
.app_xip_area 464004 464004 0 0.0
.bss 83744 83744 0 0.0
.data 564 564 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 906884 906884 0 0.0
(read/write) 133128 133128 0 0.0
.bss 131088 131088 0 0.0
.data 2040 2040 0 0.0
.text 906876 906876 0 0.0
window-app BRD4161A (read only) 843684 843684 0 0.0
(read/write) 131132 131132 0 0.0
.bss 129184 129184 0 0.0
.data 1948 1948 0 0.0
.text 843676 843676 0 0.0
lighting-app BRD4161A+rpc (read only) 941260 941260 0 0.0
(read/write) 149812 149812 0 0.0
.bss 147568 147568 0 0.0
.data 2244 2244 0 0.0
.text 941252 941252 0 0.0
esp32 all-clusters-app c3devkit (read only) 979932 979932 0 0.0
(read/write) 1397386 1397386 0 0.0
.dram0.bss 62608 62608 0 0.0
.dram0.data 14412 14412 0 0.0
.flash.rodata 201456 201456 0 0.0
.flash.text 979932 979932 0 0.0
.iram0.text 62016 62016 0 0.0
m5stack (read only) 1035275 1035275 0 0.0
(read/write) 465156 465156 0 0.0
.dram0.bss 68128 68128 0 0.0
.dram0.data 34152 34152 0 0.0
.flash.rodata 231040 231040 0 0.0
.flash.text 1029891 1029891 0 0.0
.iram0.text 123107 123107 0 0.0
k32w light k32w061+release (read/write) 684200 684200 0 0.0
.bss 77928 77928 0 0.0
.data 1992 1992 0 0.0
.text 598480 598480 0 0.0
lock k32w061+release (read/write) 725044 725044 0 0.0
.bss 78536 78536 0 0.0
.data 1952 1952 0 0.0
.text 638756 638756 0 0.0
linux chip-tool-no-interactive-ipv6only arm64 (read only) 10367220 10378244 11024 0.1
(read/write) 492593 492593 0 0.0
.bss 40881 40881 0 0.0
.data 1184 1184 0 0.0
.data.rel.ro 389328 389328 0 0.0
.dynamic 560 560 0 0.0
.got 57392 57392 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 513492 513540 48 0.0
.text 8748820 8759796 10976 0.1
thermostat-no-ble arm64 (read only) 2354596 2354596 0 0.0
(read/write) 150769 150769 0 0.0
.bss 62977 62977 0 0.0
.data 1440 1440 0 0.0
.data.rel.ro 78608 78608 0 0.0
.dynamic 560 560 0 0.0
.got 4736 4736 0 0.0
.init 24 24 0 0.0
.init_array 368 368 0 0.0
.rodata 144692 144692 0 0.0
.text 1981808 1981808 0 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2409556 2409556 0 0.0
.bss 185244 185244 0 0.0
.data 5840 5840 0 0.0
.text 1372156 1372156 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1163283 1163283 0 0.0
bss 136512 136512 0 0.0
rodata 147028 147028 0 0.0
text 801096 801096 0 0.0
p6 all-clusters-app default (read/write) 2514728 2514728 0 0.0
.bss 118624 118624 0 0.0
.data 2768 2768 0 0.0
.text 1472992 1472992 0 0.0
light-app default (read/write) 2415176 2415176 0 0.0
.bss 112120 112120 0 0.0
.data 2576 2576 0 0.0
.text 1373440 1373440 0 0.0
lock-app default (read/write) 2418656 2418656 0 0.0
.bss 111896 111896 0 0.0
.data 2536 2536 0 0.0
.text 1376920 1376920 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 801096 801096 0 0.0
bss 69972 69972 0 0.0
noinit 40416 40416 0 0.0
text 570012 570012 0 0.0

@mrjerryjohns mrjerryjohns merged commit 964adbc into project-chip:master Apr 14, 2022
@yunhanw-google
Copy link
Contributor

regarding mHighestReceivedEventNumber for your event cache PR, i think it is good to add one accessor to get mHighestReceivedEventNumber so that user could get this event number, and construct the event filter manually later if user don't wanna the cache, and user could retrieve the event data using the range from x to mHighestReceivedEventNumber

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.

AttributeCache needs to cache events too (and change its name..)
4 participants