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

Improve nRF Connect Docker image used by Build example - nRF Connect SDK workflow #10937

Merged
merged 2 commits into from
Nov 6, 2021

Conversation

electrocucaracha
Copy link
Collaborator

Problem

Hadolint tool helps to build Docker images following best practices. Using those guidelines can help to reduce the size of the image and speed up the pulling process during the CI execution.

Change overview

This change uses the multi-stage builds feature to get the Nordic Connect SDK source code in one stage and installing it in the following stage. As result the image size has been reduced from 4.14GB to 4.09GB

Testing

This was tested locally using the act tool ($ act -j nrfconnect) using the Docker image built with these changes.

@github-actions
Copy link

github-actions bot commented Oct 25, 2021

PR #10937: Size comparison from 93fef33 to e6895cc

12 builds (for efr32, k32w, p6, qpg, telink)
platform target config section 93fef33 e6895cc change % change
efr32 lighting-app BRD4161A .bss 113684 113684 0 0.0
.data 1752 1752 0 0.0
.text 735816 735816 0 0.0
lock-app BRD4161A .bss 111540 111540 0 0.0
.data 1712 1712 0 0.0
.text 715080 715080 0 0.0
window-app BRD4161A .bss 111852 111852 0 0.0
.data 1716 1716 0 0.0
.text 715876 715876 0 0.0
lighting-app BRD4161A+rpc .bss 130188 130188 0 0.0
.data 1852 1852 0 0.0
.text 723232 723232 0 0.0
k32w lock-app k32w061+debug .bss 69196 69196 0 0.0
.data 1864 1864 0 0.0
.text 515140 515140 0 0.0
shell k32w061+debug .bss 63256 63256 0 0.0
.data 672 672 0 0.0
.text 359572 359572 0 0.0
lighting-app k32w061+se05x+release .bss 78712 78712 0 0.0
.data 1900 1900 0 0.0
.text 613776 613776 0 0.0
p6 lock-app default .bss 67176 67176 0 0.0
.data 2416 2416 0 0.0
.heap 963752 963752 0 0.0
.text 1126088 1126088 0 0.0
qpg lighting-app qpg6100+debug .bss 52416 52416 0 0.0
.data 1000 1000 0 0.0
.text 485044 485044 0 0.0
lock-app qpg6100+debug .bss 51360 51360 0 0.0
.data 956 956 0 0.0
.text 461264 461264 0 0.0
persistent-storage-app qpg6100+debug .bss 27752 27752 0 0.0
.data 372 372 0 0.0
.text 149900 149900 0 0.0
telink lighting-app tlsr9518adk80d bss 69940 69940 0 0.0
noinit 33216 33216 0 0.0
text 457672 457672 0 0.0
8 builds (for linux)
platform target config section 93fef33 e6895cc change % change
linux all-clusters-app debug .bss 50160 50160 0 0.0
.data 978 978 0 0.0
.data.rel.ro 60640 60640 0 0.0
.dynamic 592 592 0 0.0
.got 4088 4088 0 0.0
.init 27 27 0 0.0
.init_array 512 512 0 0.0
.rodata 134517 134517 0 0.0
.text 1354018 1354018 0 0.0
chip-tool debug .bss 17680 17680 0 0.0
.data 1584 1584 0 0.0
.data.rel.ro 94624 94624 0 0.0
.dynamic 592 592 0 0.0
.got 4368 4368 0 0.0
.init 27 27 0 0.0
.init_array 416 416 0 0.0
.rodata 207396 207396 0 0.0
.text 3624245 3624245 0 0.0
ota-provider-app debug .bss 37440 37440 0 0.0
.data 752 752 0 0.0
.data.rel.ro 24488 24488 0 0.0
.dynamic 592 592 0 0.0
.got 4016 4016 0 0.0
.init 27 27 0 0.0
.init_array 440 440 0 0.0
.rodata 110344 110344 0 0.0
.text 1023714 1023714 0 0.0
ota-requestor-app debug .bss 205696 205696 0 0.0
.data 752 752 0 0.0
.data.rel.ro 25832 25832 0 0.0
.dynamic 592 592 0 0.0
.got 4144 4144 0 0.0
.init 27 27 0 0.0
.init_array 512 512 0 0.0
.rodata 128424 128424 0 0.0
.text 1142146 1142146 0 0.0
shell debug .bss 16136 16136 0 0.0
.data 242 242 0 0.0
.data.rel.ro 36496 36496 0 0.0
.dynamic 592 592 0 0.0
.got 3528 3528 0 0.0
.init 27 27 0 0.0
.init_array 336 336 0 0.0
.rodata 76495 76495 0 0.0
.text 599458 599458 0 0.0
tv-app debug .bss 215536 215536 0 0.0
.data 2032 2032 0 0.0
.data.rel.ro 57424 57424 0 0.0
.dynamic 592 592 0 0.0
.got 4408 4408 0 0.0
.init 27 27 0 0.0
.init_array 608 608 0 0.0
.rodata 152072 152072 0 0.0
.text 1454338 1454338 0 0.0
bridge-app debug+rpc .bss 51856 51856 0 0.0
.data 976 976 0 0.0
.data.rel.ro 27112 27112 0 0.0
.dynamic 592 592 0 0.0
.got 3952 3952 0 0.0
.init 27 27 0 0.0
.init_array 400 400 0 0.0
.rodata 109740 109740 0 0.0
.text 1064293 1064293 0 0.0
lighting-app debug+rpc .bss 41176 41176 0 0.0
.data 1106 1106 0 0.0
.data.rel.ro 53808 53808 0 0.0
.dynamic 608 608 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 528 528 0 0.0
.rodata 126897 126897 0 0.0
.text 1262178 1262178 0 0.0
16 builds (for esp32, mbed, nrfconnect)
platform target config section 93fef33 e6895cc change % change
esp32 all-clusters-app c3devkit .dram0.bss 58232 58232 0 0.0
.dram0.data 16464 16464 0 0.0
.flash.rodata 198048 198048 0 0.0
.flash.text 874382 874382 0 0.0
.iram0.text 57564 57564 0 0.0
m5stack .dram0.bss 60736 60736 0 0.0
.dram0.data 32084 32084 0 0.0
.flash.rodata 206808 206808 0 0.0
.flash.text 905451 905539 88 0.0
.iram0.text 125115 125115 0 0.0
mbed all-clusters-app CY8CPROTO_062_4343W+release .bss 179596 179596 0 0.0
.data 5192 5192 0 0.0
.heap 851656 851656 0 0.0
.text 1251216 1251216 0 0.0
lighting-app CY8CPROTO_062_4343W+release .bss 171060 171060 0 0.0
.data 5464 5464 0 0.0
.heap 859920 859920 0 0.0
.text 1219256 1219256 0 0.0
lock-app CY8CPROTO_062_4343W+release .bss 169980 169980 0 0.0
.data 5432 5432 0 0.0
.heap 861032 861032 0 0.0
.text 1197280 1197280 0 0.0
pigweed-app CY8CPROTO_062_4343W+release .bss 11760 11760 0 0.0
.data 4360 4360 0 0.0
.heap 1020328 1020328 0 0.0
.text 103064 103064 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 bss 112136 112136 0 0.0
rodata 97100 97100 0 0.0
text 577204 577204 0 0.0
lock-app nrf52840dk_nrf52840 bss 111208 111208 0 0.0
rodata 93500 93500 0 0.0
text 558764 558764 0 0.0
pigweed-app nrf52840dk_nrf52840 bss 51824 51824 0 0.0
rodata 45776 45776 0 0.0
text 339456 339456 0 0.0
pump-app nrf52840dk_nrf52840 bss 111308 111308 0 0.0
rodata 94700 94700 0 0.0
text 561868 561868 0 0.0
pump-controller-app nrf52840dk_nrf52840 bss 111204 111204 0 0.0
rodata 93476 93476 0 0.0
text 558508 558508 0 0.0
shell nrf52840dk_nrf52840 bss 109072 109072 0 0.0
rodata 72536 72536 0 0.0
text 520324 520324 0 0.0
lighting-app nrf52840dk_nrf52840+rpc bss 108376 108376 0 0.0
rodata 87876 87876 0 0.0
text 550396 550396 0 0.0
nrf5340dk_nrf5340_cpuapp bss 113508 113508 0 0.0
rodata 92340 92340 0 0.0
text 506676 506676 0 0.0
lock-app nrf5340dk_nrf5340_cpuapp bss 112580 112580 0 0.0
rodata 88760 88760 0 0.0
text 488228 488228 0 0.0
shell nrf5340dk_nrf5340_cpuapp bss 110056 110056 0 0.0
rodata 67180 67180 0 0.0
text 440936 440936 0 0.0

@github-actions
Copy link

github-actions bot commented Oct 29, 2021

PR #10937: Size comparison from e4407c4 to e6c2ac7

Full report (37 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section e4407c4 e6c2ac7 change % change
efr32 lighting-app BRD4161A (read only) 738168 738168 0 0.0
(read/write) 115428 115428 0 0.0
.bss 113676 113676 0 0.0
.data 1752 1752 0 0.0
.text 738160 738160 0 0.0
BRD4161A+rpc (read only) 725608 725608 0 0.0
(read/write) 132036 132036 0 0.0
.bss 130180 130180 0 0.0
.data 1852 1852 0 0.0
.text 725600 725600 0 0.0
lock-app BRD4161A (read only) 717464 717464 0 0.0
(read/write) 113244 113244 0 0.0
.bss 111532 111532 0 0.0
.data 1712 1712 0 0.0
.text 717456 717456 0 0.0
window-app BRD4161A (read only) 718368 718368 0 0.0
(read/write) 113572 113572 0 0.0
.bss 111852 111852 0 0.0
.data 1716 1716 0 0.0
.text 718360 718360 0 0.0
esp32 all-clusters-app c3devkit (read only) 876470 876470 0 0.0
(read/write) 1308944 1308944 0 0.0
.dram0.bss 59248 59248 0 0.0
.dram0.data 16448 16448 0 0.0
.flash.rodata 200016 200016 0 0.0
.flash.text 876470 876470 0 0.0
.iram0.text 57554 57554 0 0.0
m5stack (read only) 907791 907791 0 0.0
(read/write) 428724 428724 0 0.0
.dram0.bss 61744 61744 0 0.0
.dram0.data 32084 32084 0 0.0
.flash.rodata 208732 208732 0 0.0
.flash.text 907791 907791 0 0.0
.iram0.text 125115 125115 0 0.0
k32w lighting-app k32w061+se05x+release (read/write) 701720 701720 0 0.0
.bss 78688 78688 0 0.0
.data 1900 1900 0 0.0
.text 615332 615332 0 0.0
lock-app k32w061+debug (read/write) 593676 593676 0 0.0
.bss 69172 69172 0 0.0
.data 1864 1864 0 0.0
.text 516840 516840 0 0.0
shell k32w061+debug (read/write) 425252 425252 0 0.0
.bss 63256 63256 0 0.0
.data 672 672 0 0.0
.text 359620 359620 0 0.0
linux all-clusters-app debug (read only) 1655249 1655249 0 0.0
(read/write) 119104 119104 0 0.0
.bss 51376 51376 0 0.0
.data 978 978 0 0.0
.data.rel.ro 61504 61504 0 0.0
.dynamic 592 592 0 0.0
.got 4088 4088 0 0.0
.init 27 27 0 0.0
.init_array 520 520 0 0.0
.rodata 138069 138069 0 0.0
.text 1384914 1384914 0 0.0
bridge-app debug+rpc (read only) 1283517 1283517 0 0.0
(read/write) 85160 85160 0 0.0
.bss 51856 51856 0 0.0
.data 976 976 0 0.0
.data.rel.ro 27336 27336 0 0.0
.dynamic 592 592 0 0.0
.got 3952 3952 0 0.0
.init 27 27 0 0.0
.init_array 400 400 0 0.0
.rodata 111044 111044 0 0.0
.text 1077157 1077157 0 0.0
chip-tool debug (read only) 4266325 4266325 0 0.0
(read/write) 122176 122176 0 0.0
.bss 17680 17680 0 0.0
.data 1584 1584 0 0.0
.data.rel.ro 97504 97504 0 0.0
.dynamic 592 592 0 0.0
.got 4368 4368 0 0.0
.init 27 27 0 0.0
.init_array 424 424 0 0.0
.rodata 214704 214704 0 0.0
.text 3788821 3788821 0 0.0
lighting-app debug+rpc (read only) 1542457 1542457 0 0.0
(read/write) 102000 102000 0 0.0
.bss 41208 41208 0 0.0
.data 1106 1106 0 0.0
.data.rel.ro 54416 54416 0 0.0
.dynamic 608 608 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 528 528 0 0.0
.rodata 129169 129169 0 0.0
.text 1280834 1280834 0 0.0
ota-provider-app debug (read only) 1239993 1239993 0 0.0
(read/write) 67872 67872 0 0.0
.bss 37440 37440 0 0.0
.data 752 752 0 0.0
.data.rel.ro 24584 24584 0 0.0
.dynamic 592 592 0 0.0
.got 4016 4016 0 0.0
.init 27 27 0 0.0
.init_array 440 440 0 0.0
.rodata 111208 111208 0 0.0
.text 1032610 1032610 0 0.0
ota-requestor-app debug (read only) 1301641 1301641 0 0.0
(read/write) 76616 76616 0 0.0
.bss 45216 45216 0 0.0
.data 816 816 0 0.0
.data.rel.ro 25464 25464 0 0.0
.dynamic 592 592 0 0.0
.got 3984 3984 0 0.0
.init 27 27 0 0.0
.init_array 512 512 0 0.0
.rodata 127424 127424 0 0.0
.text 1076402 1076402 0 0.0
shell debug (read only) 787153 787153 0 0.0
(read/write) 57760 57760 0 0.0
.bss 16168 16168 0 0.0
.data 242 242 0 0.0
.data.rel.ro 36848 36848 0 0.0
.dynamic 592 592 0 0.0
.got 3528 3528 0 0.0
.init 27 27 0 0.0
.init_array 336 336 0 0.0
.rodata 77519 77519 0 0.0
.text 608098 608098 0 0.0
tv-app debug (read only) 1775105 1775105 0 0.0
(read/write) 289624 289624 0 0.0
.bss 223280 223280 0 0.0
.data 2032 2032 0 0.0
.data.rel.ro 58672 58672 0 0.0
.dynamic 592 592 0 0.0
.got 4408 4408 0 0.0
.init 27 27 0 0.0
.init_array 608 608 0 0.0
.rodata 154488 154488 0 0.0
.text 1478354 1478354 0 0.0
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2291464 2291464 0 0.0
.bss 180620 180620 0 0.0
.data 5192 5192 0 0.0
.heap 850632 850632 0 0.0
.text 1254064 1254064 0 0.0
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2275672 2275672 0 0.0
.bss 172820 172820 0 0.0
.data 5568 5568 0 0.0
.heap 858056 858056 0 0.0
.text 1238272 1238272 0 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2253392 2253392 0 0.0
.bss 171724 171724 0 0.0
.data 5552 5552 0 0.0
.heap 859168 859168 0 0.0
.text 1215992 1215992 0 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139744 1139744 0 0.0
.bss 11752 11752 0 0.0
.data 4368 4368 0 0.0
.heap 1020328 1020328 0 0.0
.text 103128 103128 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2048976 2048976 0 0.0
.bss 156208 156208 0 0.0
.data 4968 4968 0 0.0
.heap 875272 875272 0 0.0
.text 1011576 1011576 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 863599 863599 0 0.0
bss 112132 112132 0 0.0
rodata 97816 97816 0 0.0
text 578024 578024 0 0.0
nrf52840dk_nrf52840+rpc (read/write) 824427 824427 0 0.0
bss 108372 108372 0 0.0
rodata 88596 88596 0 0.0
text 551200 551200 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 788590 788590 0 0.0
bss 113504 113504 0 0.0
rodata 93056 93056 0 0.0
text 507492 507492 0 0.0
lock-app nrf52840dk_nrf52840 (read/write) 840275 840275 0 0.0
bss 111168 111168 0 0.0
rodata 94172 94172 0 0.0
text 559508 559508 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 765570 765570 0 0.0
bss 112576 112576 0 0.0
rodata 89476 89476 0 0.0
text 489068 489068 0 0.0
pigweed-app nrf52840dk_nrf52840 (read/write) 497323 497323 0 0.0
bss 51824 51824 0 0.0
rodata 45776 45776 0 0.0
text 339436 339436 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 844975 844975 0 0.0
bss 111304 111304 0 0.0
rodata 95416 95416 0 0.0
text 562720 562720 0 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 840263 840263 0 0.0
bss 111200 111200 0 0.0
rodata 94192 94192 0 0.0
text 559352 559352 0 0.0
shell nrf52840dk_nrf52840 (read/write) 776435 776435 0 0.0
bss 109072 109072 0 0.0
rodata 72536 72536 0 0.0
text 520236 520236 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 691490 691490 0 0.0
bss 110056 110056 0 0.0
rodata 67180 67180 0 0.0
text 440848 440848 0 0.0
p6 lock-app default (read/write) 2169808 2169808 0 0.0
.bss 67168 67168 0 0.0
.data 2416 2416 0 0.0
.heap 963760 963760 0 0.0
.text 1128072 1128072 0 0.0
qpg lighting-app qpg6100+debug (read only) 491288 491288 0 0.0
(read/write) 114144 114144 0 0.0
.bss 51288 51288 0 0.0
.data 1000 1000 0 0.0
.text 485968 485968 0 0.0
lock-app qpg6100+debug (read only) 467620 467620 0 0.0
(read/write) 114140 114140 0 0.0
.bss 50240 50240 0 0.0
.data 956 956 0 0.0
.text 462300 462300 0 0.0
persistent-storage-app qpg6100+debug (read only) 155236 155236 0 0.0
(read/write) 114140 114140 0 0.0
.bss 27752 27752 0 0.0
.data 372 372 0 0.0
.text 149916 149916 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 665290 665290 0 0.0
bss 69944 69944 0 0.0
noinit 33216 33216 0 0.0
text 458542 458542 0 0.0

Some of these best practices are:
* Multi-stage builds
* Pin versions
* Avoid additional packages installation
* Clean all missing after apt command

Signed-off-by: Victor Morales <v.morales@samsung.com>
@github-actions
Copy link

github-actions bot commented Nov 2, 2021

PR #10937: Size comparison from cb7c854 to 3cf4fbf

Full report (37 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section cb7c854 3cf4fbf change % change
efr32 lighting-app BRD4161A (read only) 737128 737128 0 0.0
(read/write) 114620 114620 0 0.0
.bss 112860 112860 0 0.0
.data 1756 1756 0 0.0
.text 737120 737120 0 0.0
BRD4161A+rpc (read only) 724552 724552 0 0.0
(read/write) 131220 131220 0 0.0
.bss 129364 129364 0 0.0
.data 1856 1856 0 0.0
.text 724544 724544 0 0.0
lock-app BRD4161A (read only) 716392 716392 0 0.0
(read/write) 112436 112436 0 0.0
.bss 110716 110716 0 0.0
.data 1716 1716 0 0.0
.text 716384 716384 0 0.0
window-app BRD4161A (read only) 717308 717308 0 0.0
(read/write) 112756 112756 0 0.0
.bss 111036 111036 0 0.0
.data 1720 1720 0 0.0
.text 717300 717300 0 0.0
esp32 all-clusters-app c3devkit (read only) 880594 880594 0 0.0
(read/write) 1308072 1308072 0 0.0
.dram0.bss 58608 58608 0 0.0
.dram0.data 16464 16464 0 0.0
.flash.rodata 199768 199768 0 0.0
.flash.text 880594 880594 0 0.0
.iram0.text 57554 57554 0 0.0
m5stack (read only) 911719 911719 0 0.0
(read/write) 427844 427844 0 0.0
.dram0.bss 61112 61112 0 0.0
.dram0.data 32100 32100 0 0.0
.flash.rodata 208468 208468 0 0.0
.flash.text 911719 911719 0 0.0
.iram0.text 125115 125115 0 0.0
k32w lighting-app k32w061+se05x+release (read/write) 699408 699408 0 0.0
.bss 77856 77856 0 0.0
.data 1904 1904 0 0.0
.text 613848 613848 0 0.0
lock-app k32w061+debug (read/write) 591716 591716 0 0.0
.bss 68372 68372 0 0.0
.data 1868 1868 0 0.0
.text 515676 515676 0 0.0
shell k32w061+debug (read/write) 424884 424884 0 0.0
.bss 63296 63296 0 0.0
.data 668 668 0 0.0
.text 359216 359216 0 0.0
linux all-clusters-app debug (read only) 1690641 1690641 0 0.0
(read/write) 119696 119696 0 0.0
.bss 51152 51152 0 0.0
.data 1042 1042 0 0.0
.data.rel.ro 62240 62240 0 0.0
.dynamic 592 592 0 0.0
.got 4088 4088 0 0.0
.init 27 27 0 0.0
.init_array 536 536 0 0.0
.rodata 139861 139861 0 0.0
.text 1417410 1417410 0 0.0
bridge-app debug+rpc (read only) 1283597 1283597 0 0.0
(read/write) 68520 68520 0 0.0
.bss 35056 35056 0 0.0
.data 992 992 0 0.0
.data.rel.ro 27496 27496 0 0.0
.dynamic 592 592 0 0.0
.got 3952 3952 0 0.0
.init 27 27 0 0.0
.init_array 400 400 0 0.0
.rodata 111460 111460 0 0.0
.text 1076581 1076581 0 0.0
chip-tool debug (read only) 4348869 4348869 0 0.0
(read/write) 124768 124768 0 0.0
.bss 18224 18224 0 0.0
.data 2224 2224 0 0.0
.data.rel.ro 98896 98896 0 0.0
.dynamic 592 592 0 0.0
.got 4368 4368 0 0.0
.init 27 27 0 0.0
.init_array 424 424 0 0.0
.rodata 219528 219528 0 0.0
.text 3863637 3863637 0 0.0
lighting-app debug+rpc (read only) 1542921 1542921 0 0.0
(read/write) 101712 101712 0 0.0
.bss 40728 40728 0 0.0
.data 1138 1138 0 0.0
.data.rel.ro 54560 54560 0 0.0
.dynamic 608 608 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 528 528 0 0.0
.rodata 129553 129553 0 0.0
.text 1280674 1280674 0 0.0
ota-provider-app debug (read only) 1243417 1243417 0 0.0
(read/write) 67552 67552 0 0.0
.bss 37152 37152 0 0.0
.data 752 752 0 0.0
.data.rel.ro 24568 24568 0 0.0
.dynamic 592 592 0 0.0
.got 4016 4016 0 0.0
.init 27 27 0 0.0
.init_array 440 440 0 0.0
.rodata 112360 112360 0 0.0
.text 1034978 1034978 0 0.0
ota-requestor-app debug (read only) 1310777 1310777 0 0.0
(read/write) 76872 76872 0 0.0
.bss 45408 45408 0 0.0
.data 816 816 0 0.0
.data.rel.ro 25512 25512 0 0.0
.dynamic 592 592 0 0.0
.got 3984 3984 0 0.0
.init 27 27 0 0.0
.init_array 512 512 0 0.0
.rodata 123328 123328 0 0.0
.text 1089682 1089682 0 0.0
shell debug (read only) 786625 786625 0 0.0
(read/write) 57664 57664 0 0.0
.bss 16104 16104 0 0.0
.data 242 242 0 0.0
.data.rel.ro 36816 36816 0 0.0
.dynamic 592 592 0 0.0
.got 3528 3528 0 0.0
.init 27 27 0 0.0
.init_array 336 336 0 0.0
.rodata 77839 77839 0 0.0
.text 607298 607298 0 0.0
tv-app debug (read only) 1810273 1810273 0 0.0
(read/write) 289944 289944 0 0.0
.bss 222768 222768 0 0.0
.data 2704 2704 0 0.0
.data.rel.ro 58824 58824 0 0.0
.dynamic 592 592 0 0.0
.got 4408 4408 0 0.0
.init 27 27 0 0.0
.init_array 608 608 0 0.0
.rodata 155640 155640 0 0.0
.text 1512370 1512370 0 0.0
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2293008 2293008 0 0.0
.bss 179964 179964 0 0.0
.data 5216 5216 0 0.0
.heap 851264 851264 0 0.0
.text 1255608 1255608 0 0.0
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2272008 2272008 0 0.0
.bss 172012 172012 0 0.0
.data 5568 5568 0 0.0
.heap 858864 858864 0 0.0
.text 1234608 1234608 0 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2249728 2249728 0 0.0
.bss 170908 170908 0 0.0
.data 5560 5560 0 0.0
.heap 859976 859976 0 0.0
.text 1212328 1212328 0 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139744 1139744 0 0.0
.bss 11752 11752 0 0.0
.data 4368 4368 0 0.0
.heap 1020328 1020328 0 0.0
.text 103128 103128 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2048496 2048496 0 0.0
.bss 156256 156256 0 0.0
.data 4960 4960 0 0.0
.heap 875232 875232 0 0.0
.text 1011096 1011096 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 861331 861331 0 0.0
bss 111320 111320 0 0.0
rodata 96772 96772 0 0.0
text 577620 577620 0 0.0
nrf52840dk_nrf52840+rpc (read/write) 822203 822203 0 0.0
bss 107560 107560 0 0.0
rodata 87564 87564 0 0.0
text 550796 550796 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 786370 786370 0 0.0
bss 112696 112696 0 0.0
rodata 92028 92028 0 0.0
text 507084 507084 0 0.0
lock-app nrf52840dk_nrf52840 (read/write) 838035 838035 0 0.0
bss 110356 110356 0 0.0
rodata 93140 93140 0 0.0
text 559096 559096 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 763334 763334 0 0.0
bss 111764 111764 0 0.0
rodata 88448 88448 0 0.0
text 488652 488652 0 0.0
pigweed-app nrf52840dk_nrf52840 (read/write) 497323 497323 0 0.0
bss 51824 51824 0 0.0
rodata 45776 45776 0 0.0
text 339436 339436 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 844147 844147 0 0.0
bss 110492 110492 0 0.0
rodata 94852 94852 0 0.0
text 563276 563276 0 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 837891 837891 0 0.0
bss 110392 110392 0 0.0
rodata 93140 93140 0 0.0
text 558832 558832 0 0.0
shell nrf52840dk_nrf52840 (read/write) 775991 775991 0 0.0
bss 109112 109112 0 0.0
rodata 72412 72412 0 0.0
text 519884 519884 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 691026 691026 0 0.0
bss 110092 110092 0 0.0
rodata 67052 67052 0 0.0
text 440480 440480 0 0.0
p6 lock-app default (read/write) 2167984 2167984 0 0.0
.bss 66360 66360 0 0.0
.data 2416 2416 0 0.0
.heap 964568 964568 0 0.0
.text 1126248 1126248 0 0.0
qpg lighting-app qpg6100+debug (read only) 490680 490680 0 0.0
(read/write) 114140 114140 0 0.0
.bss 50416 50416 0 0.0
.data 1004 1004 0 0.0
.text 485360 485360 0 0.0
lock-app qpg6100+debug (read only) 467016 467016 0 0.0
(read/write) 114144 114144 0 0.0
.bss 49360 49360 0 0.0
.data 960 960 0 0.0
.text 461696 461696 0 0.0
persistent-storage-app qpg6100+debug (read only) 153212 153212 0 0.0
(read/write) 114140 114140 0 0.0
.bss 18336 18336 0 0.0
.data 356 356 0 0.0
.text 147892 147892 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 662798 662798 0 0.0
bss 69132 69132 0 0.0
noinit 33216 33216 0 0.0
text 457926 457926 0 0.0

@github-actions
Copy link

github-actions bot commented Nov 4, 2021

PR #10937: Size comparison from 2ea9fbc to fede2d9

Decreases (1 build for esp32)
platform target config section 2ea9fbc fede2d9 change % change
esp32 all-clusters-app m5stack (read only) 911915 911839 -76 -0.0
.flash.text 911915 911839 -76 -0.0
Full report (38 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
platform target config section 2ea9fbc fede2d9 change % change
efr32 lighting-app BRD4161A (read only) 744860 744860 0 0.0
(read/write) 115696 115696 0 0.0
.bss 113924 113924 0 0.0
.data 1772 1772 0 0.0
.text 744852 744852 0 0.0
BRD4161A+rpc (read only) 732392 732392 0 0.0
(read/write) 132316 132316 0 0.0
.bss 130428 130428 0 0.0
.data 1888 1888 0 0.0
.text 732384 732384 0 0.0
lock-app BRD4161A (read only) 724128 724128 0 0.0
(read/write) 113516 113516 0 0.0
.bss 111780 111780 0 0.0
.data 1732 1732 0 0.0
.text 724120 724120 0 0.0
window-app BRD4161A (read only) 725024 725024 0 0.0
(read/write) 113836 113836 0 0.0
.bss 112100 112100 0 0.0
.data 1736 1736 0 0.0
.text 725016 725016 0 0.0
esp32 all-clusters-app c3devkit (read only) 880626 880626 0 0.0
(read/write) 1305592 1305592 0 0.0
.dram0.bss 57528 57528 0 0.0
.dram0.data 16464 16464 0 0.0
.flash.rodata 198360 198360 0 0.0
.flash.text 880626 880626 0 0.0
.iram0.text 57554 57554 0 0.0
m5stack (read only) 911915 911839 -76 -0.0
(read/write) 425380 425380 0 0.0
.dram0.bss 60032 60032 0 0.0
.dram0.data 32100 32100 0 0.0
.flash.rodata 207084 207084 0 0.0
.flash.text 911915 911839 -76 -0.0
.iram0.text 125115 125115 0 0.0
k32w lighting-app k32w061+se05x+release (read/write) 699240 699240 0 0.0
.bss 77784 77784 0 0.0
.data 1904 1904 0 0.0
.text 613752 613752 0 0.0
lock-app k32w061+debug (read/write) 592044 592044 0 0.0
.bss 68316 68316 0 0.0
.data 1872 1872 0 0.0
.text 516056 516056 0 0.0
shell k32w061+debug (read/write) 657536 657536 0 0.0
.bss 78952 78952 0 0.0
.data 1840 1840 0 0.0
.text 570944 570944 0 0.0
linux all-clusters-app debug (read only) 1701937 1701937 0 0.0
(read/write) 118656 118656 0 0.0
.bss 50000 50000 0 0.0
.data 1042 1042 0 0.0
.data.rel.ro 62336 62336 0 0.0
.dynamic 592 592 0 0.0
.got 4088 4088 0 0.0
.init 27 27 0 0.0
.init_array 552 552 0 0.0
.rodata 138997 138997 0 0.0
.text 1429474 1429474 0 0.0
bridge-app debug+rpc (read only) 1291093 1291093 0 0.0
(read/write) 69232 69232 0 0.0
.bss 34928 34928 0 0.0
.data 1568 1568 0 0.0
.data.rel.ro 27768 27768 0 0.0
.dynamic 592 592 0 0.0
.got 3952 3952 0 0.0
.init 27 27 0 0.0
.init_array 408 408 0 0.0
.rodata 110852 110852 0 0.0
.text 1084325 1084325 0 0.0
chip-tool debug (read only) 4427917 4427917 0 0.0
(read/write) 125800 125800 0 0.0
.bss 18128 18128 0 0.0
.data 2224 2224 0 0.0
.data.rel.ro 100032 100032 0 0.0
.dynamic 592 592 0 0.0
.got 4368 4368 0 0.0
.init 27 27 0 0.0
.init_array 432 432 0 0.0
.rodata 226096 226096 0 0.0
.text 3933477 3933477 0 0.0
lighting-app debug+rpc (read only) 1552089 1552089 0 0.0
(read/write) 102200 102200 0 0.0
.bss 40568 40568 0 0.0
.data 1170 1170 0 0.0
.data.rel.ro 55168 55168 0 0.0
.dynamic 608 608 0 0.0
.got 4112 4112 0 0.0
.init 27 27 0 0.0
.init_array 536 536 0 0.0
.rodata 129489 129489 0 0.0
.text 1288994 1288994 0 0.0
ota-provider-app debug (read only) 1250377 1250377 0 0.0
(read/write) 67400 67400 0 0.0
.bss 36992 36992 0 0.0
.data 752 752 0 0.0
.data.rel.ro 24568 24568 0 0.0
.dynamic 592 592 0 0.0
.got 4016 4016 0 0.0
.init 27 27 0 0.0
.init_array 448 448 0 0.0
.rodata 112104 112104 0 0.0
.text 1042146 1042146 0 0.0
ota-requestor-app debug (read only) 1328705 1328705 0 0.0
(read/write) 76656 76656 0 0.0
.bss 45120 45120 0 0.0
.data 816 816 0 0.0
.data.rel.ro 25576 25576 0 0.0
.dynamic 592 592 0 0.0
.got 3992 3992 0 0.0
.init 27 27 0 0.0
.init_array 520 520 0 0.0
.rodata 124112 124112 0 0.0
.text 1106514 1106514 0 0.0
shell debug (read only) 786873 786873 0 0.0
(read/write) 57608 57608 0 0.0
.bss 16040 16040 0 0.0
.data 242 242 0 0.0
.data.rel.ro 36816 36816 0 0.0
.dynamic 592 592 0 0.0
.got 3528 3528 0 0.0
.init 27 27 0 0.0
.init_array 344 344 0 0.0
.rodata 77903 77903 0 0.0
.text 607458 607458 0 0.0
tv-app debug (read only) 1815729 1815729 0 0.0
(read/write) 289824 289824 0 0.0
.bss 222640 222640 0 0.0
.data 2704 2704 0 0.0
.data.rel.ro 58824 58824 0 0.0
.dynamic 592 592 0 0.0
.got 4408 4408 0 0.0
.init 27 27 0 0.0
.init_array 616 616 0 0.0
.rodata 155112 155112 0 0.0
.text 1518306 1518306 0 0.0
mbed all-clusters-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2292536 2292536 0 0.0
.bss 178876 178876 0 0.0
.data 5216 5216 0 0.0
.heap 852352 852352 0 0.0
.text 1255136 1255136 0 0.0
lighting-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2272992 2272992 0 0.0
.bss 171948 171948 0 0.0
.data 5568 5568 0 0.0
.heap 858928 858928 0 0.0
.text 1235592 1235592 0 0.0
lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2250712 2250712 0 0.0
.bss 170844 170844 0 0.0
.data 5560 5560 0 0.0
.heap 860040 860040 0 0.0
.text 1213312 1213312 0 0.0
pigweed-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 1139744 1139744 0 0.0
.bss 11752 11752 0 0.0
.data 4368 4368 0 0.0
.heap 1020328 1020328 0 0.0
.text 103128 103128 0 0.0
shell CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2048400 2048400 0 0.0
.bss 156224 156224 0 0.0
.data 4960 4960 0 0.0
.heap 875264 875264 0 0.0
.text 1011000 1011000 0 0.0
nrfconnect lighting-app nrf52840dk_nrf52840 (read/write) 861303 861303 0 0.0
bss 111248 111248 0 0.0
rodata 96808 96808 0 0.0
text 577624 577624 0 0.0
nrf52840dk_nrf52840+rpc (read/write) 823651 823651 0 0.0
bss 107600 107600 0 0.0
rodata 87988 87988 0 0.0
text 551772 551772 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 786326 786326 0 0.0
bss 112624 112624 0 0.0
rodata 92064 92064 0 0.0
text 507080 507080 0 0.0
lock-app nrf52840dk_nrf52840 (read/write) 838011 838011 0 0.0
bss 110284 110284 0 0.0
rodata 93180 93180 0 0.0
text 559100 559100 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 763306 763306 0 0.0
bss 111692 111692 0 0.0
rodata 88484 88484 0 0.0
text 488648 488648 0 0.0
pigweed-app nrf52840dk_nrf52840 (read/write) 497323 497323 0 0.0
bss 51824 51824 0 0.0
rodata 45776 45776 0 0.0
text 339436 339436 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 844119 844119 0 0.0
bss 110420 110420 0 0.0
rodata 94888 94888 0 0.0
text 563280 563280 0 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 837863 837863 0 0.0
bss 110320 110320 0 0.0
rodata 93176 93176 0 0.0
text 558836 558836 0 0.0
shell nrf52840dk_nrf52840 (read/write) 775755 775755 0 0.0
bss 109072 109072 0 0.0
rodata 72432 72432 0 0.0
text 519664 519664 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 690794 690794 0 0.0
bss 110052 110052 0 0.0
rodata 67076 67076 0 0.0
text 440256 440256 0 0.0
p6 all-clusters-app default (read/write) 2299000 2299000 0 0.0
.bss 106824 106824 0 0.0
.data 2520 2520 0 0.0
.heap 924000 924000 0 0.0
.text 1257264 1257264 0 0.0
lock-app default (read/write) 2212896 2212896 0 0.0
.bss 95648 95648 0 0.0
.data 2392 2392 0 0.0
.heap 935304 935304 0 0.0
.text 1171160 1171160 0 0.0
qpg lighting-app qpg6100+debug (read only) 490628 490628 0 0.0
(read/write) 114140 114140 0 0.0
.bss 50944 50944 0 0.0
.data 1004 1004 0 0.0
.text 485308 485308 0 0.0
lock-app qpg6100+debug (read only) 466952 466952 0 0.0
(read/write) 114144 114144 0 0.0
.bss 49888 49888 0 0.0
.data 960 960 0 0.0
.text 461632 461632 0 0.0
persistent-storage-app qpg6100+debug (read only) 153212 153212 0 0.0
(read/write) 114140 114140 0 0.0
.bss 18912 18912 0 0.0
.data 356 356 0 0.0
.text 147892 147892 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 662982 662982 0 0.0
bss 69064 69064 0 0.0
noinit 33216 33216 0 0.0
text 458134 458134 0 0.0

@woody-apple woody-apple merged commit a01b54d into project-chip:master Nov 6, 2021
@electrocucaracha electrocucaracha deleted the improve_nrf branch November 12, 2021 20:57
PSONALl pushed a commit to PSONALl/connectedhomeip that referenced this pull request Dec 3, 2021
)

Some of these best practices are:
* Multi-stage builds
* Pin versions
* Avoid additional packages installation
* Clean all missing after apt command

Signed-off-by: Victor Morales <v.morales@samsung.com>

Co-authored-by: Justin Wood <woody@apple.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants