You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 25 Next »

Introduction

                     Tiny RDKB is an effort focused on reducing the RFS of mainline RDKB. While there are many different ways are being explored and worked upon for reducing the overall image size, this particular document is aiming at capturing the Tiny RDKB effort .

Major Highlights to be taken in RDKB RPI :  Removed the Unused Modules ,XML files ,scripts, systemd files ,configuration files,libraries and binaries/executables from the RDKB RPI  RFS. This should be applicable for both Morty and Dunfell builds.

Design

             Below are the Overall steps to be taken for Tiny RDKB effort in RPI,

1.Remove sound kernel modules
2.Removal of unused file COSAXcalibur.XML
3.Replace some executables with busybox
4.Replace NTPD package with Busybox configuration
5.Removed UnUsed packages from ccsp packagegroup in RPI platfrom
6.Removed UnUsed packages from OSS packagegroup in RDKB RPI platfrom
7.Removed UnUsed and Duplicate files from RFS in RDKB RPI platfrom
8.Removed unused driver kernel modules of ath,mediatek,realtek in linux-raspberrypi
9.Removed NLS modules from linux-raspberrypi
10.Removed unused driver modules of rtc,usb,input in linux-raspberrypi
11.Removed Unused kernel driver modules of NF,Xtables,PPS,BT from linux-raspberrypi
12.Removed Unused kernel modules of HID and USB from linux-raspberrypi
13.Removed Unused kernel modules of DRM,USB_SERIAL,SPEECH,CAN,W1,YAM from linux-raspberrypi
14.Added PHP->JST Migration
15.Removed Unused packages from util-linux
16.Added nodejs package as DISTRO Features for Morty Builds
17.Removed Unused files from RFS
18.Converted Parental control features kernel modules to in-built modules for reducing the kernel size in RFS.

Comparison of Image Size


S.NOYocto Version Builds      Before Tiny RDKB Image Size          After Tiny RDKB Image Size                        Difference 
  1      Morty               380MB                 224 MB                        156MB
  2     Dunfell 80MB(After extract the tar 448MB) 59MB(After extract the tar 306MB)                         21MB(142MB)

Jira

        REFPLTB-916 - Getting issue details... STATUS

             https://code.rdkcentral.com/r/q/REFPLTB-916

RDKB RPI Memory Comparison

              Below are the ways to compare the memories in before and after the Tiny RDKB effort in RPI,

      • RAM usage
      • CPU Utilization
      • Rootfs size on Storage Disk

Initial Boot-up

             This below analysis are immediately taken while the fresh image is boot-up,

RAM Usage On Initial Boot-up

                          RAM Usage on Initial Boot-up

CPU Utilization On Initial Boot-up

CPU utilization on Initial boot-up

Rootfs Size on Storage Disk On Initial Boot-up

RFS on Initial boot-up


After one hour from Image Boot-up

                   The below analysis are taken one hour after form the fresh image boot-up,

RAM Usage On After One Hour

RAM Usage on After one hour

CPU Utilization On After One hour

CPU utilization on after 1hour

Rootfs Size on Storage Disk On After One hour


Linux Commands for Memory Usage

Below linux commands are used to find the memory usage of RAM, CPU Utilization and Rootfs Size.


 S.NO                               Memory Usages                    Linux Commands
              1                             RAM Usage                         free -m
              2                             CPU Utilization                         iostat / top
               3                             Rootfs Size                         df -h


Initial Boot -up

         RAM Usage -  Sample Output from fresh image 

    root@RaspberryPi-Gateway:~# free -m
                  total        used        free      shared  buff/cache   available
    Mem:            924          62         826          4          39         842
    Swap:             0           0           0
    root@RaspberryPi-Gateway:~# free -m
                  total        used        free      shared  buff/cache   available
    Mem:            603          60          503          4          36         518
    Swap:             0           0           0
    
    


     CPU Utilization

      root@RaspberryPi-Gateway:~# iostat 
      Linux 5.4.72-v7 (RaspberryPi-Gateway) 	12/09/20 	_armv7l_	(4 CPU)
      
      avg-cpu:  %user   %nice %system %iowait  %steal   %idle
                19.17    0.02   28.86    0.41    2.50   53.46
      
      Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
      mmcblk0          14.02       508.65        43.97      95683       8271
      mmcblk0p1         0.38         3.88         0.01        729          1
      mmcblk0p2        13.39       493.68        43.96      92866       8270
      
      
      root@RaspberryPi-Gateway:~# iostat 
      Linux 5.4.72-v7 (RaspberryPi-Gateway) 	03/29/21 	_armv7l_	(4 CPU)
      
      avg-cpu:  %user   %nice %system %iowait  %steal   %idle
                17.72    0.02   26.32    1.94    0.00   53.98
      
      Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
      mmcblk0          20.85       723.65        73.56      79435       8075
      mmcblk0p1         0.58         6.66         0.01        731          1
      mmcblk0p2        19.83       697.97        73.55      76616       8074
      
      
      


      •                              

                                  


      • No labels