Hi Robert,
I just realized that I need to use an overlayfs (via overlayroot) to 
protect the emmc / OS from crashing on sudden power off. 
Now overlaytroot needs the initrd image to work.
So I had to enable the /boot/initrd.img-4.19.94-ti-rt-r63 file.
Re-enablingthe initird file in /boot added about 48 to 50s to the kernel 
boot time ;-(
Any ideas on how to mitigate that? how to get the booting time down?
Thanks & Regards,
-amit

debian@beaglebone:/$ systemd-analyze
Startup finished in 58.454s (kernel) + 49.641s (userspace) = 1min 48.096s
debian@beaglebone:/$ systemd-analyze blame
    1min 21.167s dev-mmcblk1p1.device
         10.477s generic-board-startup.service
          5.278s systemd-udev-trigger.service
          2.907s networking.service
          2.684s ssh.service
          2.328s keyboard-setup.service
          1.940s dnsmasq.service
          1.661s systemd-journald.service
          1.101s systemd-user-sessions.service
           895ms systemd-udevd.service
           845ms user@1001.service
           785ms systemd-random-seed.service
           766ms systemd-timesyncd.service
           754ms systemd-tmpfiles-setup-dev.service
           725ms systemd-modules-load.service
           670ms systemd-update-utmp.service
           657ms systemd-logind.service
           645ms sys-kernel-config.mount
           641ms sys-kernel-debug.mount
           603ms systemd-tmpfiles-setup.service
           572ms kmod-static-nodes.service
           518ms rsyslog.service
           515ms systemd-sysctl.service
           408ms systemd-remount-fs.service
           358ms slim.service
           351ms console-setup.service
           324ms systemd-journal-flush.service
           280ms sys-fs-fuse-connections.mount
           272ms systemd-tmpfiles-clean.service
           228ms systemd-update-utmp-runlevel.service
           223ms dev-mqueue.mount

On Friday, 21 May, 2021 at 12:32:08 pm UTC+5:30 Amit Goradia wrote:

> On Thursday, 20 May, 2021 at 11:01:42 pm UTC+5:30 RobertCNelson wrote:
>
>> > removed wpasupplicant and connman and old kernel 
>> > 
>> > sudo apt-get purge linux-image-4.14.108-ti-r134 wpasupplicant connman 
>> > 
>> > debian@beaglebone:~$ systemd-analyze 
>> > 
>> > Startup finished in 13.502s (kernel) + 36.686s (userspace) = 50.188s 
>> > 
>> > I then removed the initrd file in /boot directory (From what I 
>> understand this kernel does not necessarily need initrd). 
>> > debian@beaglebone:/boot$ sudo mv initrd.img-4.19.94-ti-rt-r63 
>> moved-initrd.img-4.19.94-ti-rt-r63 
>> > 
>> > Removing the initrd gives the max speedup for kernel. From 10s-13s with 
>> initrd, it reduces to 1s-2s 
>> > debian@beaglebone:~$ systemd-analyze 
>> > Startup finished in 1.663s (kernel) + 36.385s (userspace) = 38.048s 
>> > debian@beaglebone:~$ systemd-analyze blame 
>> > 1min 4.266s dev-mmcblk1p1.device 
>> > 26.360s generic-board-startup.service 
>> > 3.847s systemd-udev-trigger.service 
>> > 2.824s loadcpufreq.service 
>>
>> You can nuke this ^, it's really only for am57xx, so we can 
>> downclock.. But on am335x, let it run at full speed as these are set: 
>>
>> CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y 
>> CONFIG_CPU_FREQ_GOV_PERFORMANCE=y 
>>
>> > 2.215s networking.service 
>> > 1.647s ssh.service 
>> > 1.396s us...@1000.service 
>> > 1.209s rsyslog.service 
>> > 1.189s systemd-journald.service 
>> > 999ms dnsmasq.service 
>> > 897ms cpufrequtils.service 
>>
>> Same as above.. 
>>
>> > 855ms systemd-timesyncd.service 
>> > 674ms systemd-fsck-root.service 
>> > 642ms systemd-logind.service 
>> > 505ms systemd-udevd.service 
>> > 445ms systemd-user-sessions.service 
>> > 408ms systemd-tmpfiles-setup-dev.service 
>> > 389ms systemd-update-utmp.service 
>> > 375ms hostapd.service 
>>
>> You nuked wpasupplicant, get rid of hostapd.. 
>>
>> > 365ms systemd-modules-load.service 
>> > 326ms dev-mqueue.mount 
>> > 324ms systemd-random-seed.service 
>> > 312ms sys-kernel-config.mount 
>> > 291ms systemd-tmpfiles-setup.service 
>> > 274ms sys-kernel-debug.mount 
>> > 236ms kmod-static-nodes.service 
>> > 231ms sys-fs-fuse-connections.mount 
>> > 200ms systemd-remount-fs.service 
>> > 190ms systemd-journal-flush.service 
>> > 185ms systemd-sysctl.service 
>> > 145ms systemd-update-utmp-runlevel.service 
>> > 130ms systemd-tmpfiles-clean.service 
>> > 
>> > Next point to attack is the generic-board-startup.service. The main 
>> time that process spends is in the file /opt/scripts/boot/am335x_evm.sh 
>> > This takes care of the USB flash, Serial and network gadgets that are 
>> initialized. Remove items which are not needed. It also has a lot of 
>> generic selections for Beagle family boards which can be removed. I am 
>> working on my version for just beaglebone black with only network over USB 
>> support. 
>> > Some ideas can be found here (
>> https://github.com/RobertCNelson/boot-scripts/issues/10) 
>> > 
>> > Hope that helps. 
>>
>> -- 
>> Robert Nelson 
>> https://rcn-ee.com/
>
>
>
> Thanks a lot Robert. Your help is most appreciated.
> I have implemented your suggestions and removed the following services
> loadcpufreq.service
> cpufrequtils.service
> hostapd.service
> My current boot time still ranges between 48s to 52s 
>
> debian@beaglebone:~$ systemd-analyze
> Startup finished in 1.751s (kernel) + 48.369s (userspace) = 50.120s
> debian@beaglebone:~$ systemd-analyze blame
>     1min 14.318s dev-mmcblk1p1.device
>           9.419s generic-board-startup.service
>           5.353s systemd-udev-trigger.service
>           2.470s keyboard-setup.service
>           2.438s networking.service
>           2.423s ssh.service
>           2.161s dnsmasq.service
>           1.718s systemd-logind.service
>           1.613s systemd-journald.service
>           1.018s systemd-timesyncd.service
>            969ms systemd-fsck-root.service
>            730ms systemd-udevd.service
>            595ms us...@1001.service
>            589ms rsyslog.service
>            549ms slim.service
>            500ms sys-kernel-debug.mount
>            488ms systemd-tmpfiles-setup-dev.service
>            479ms systemd-update-utmp.service
>            469ms dev-mqueue.mount
>            456ms systemd-sysctl.service
>            451ms systemd-tmpfiles-setup.service
>            384ms systemd-modules-load.service
>            380ms sys-kernel-config.mount
>            352ms systemd-journal-flush.service
>            344ms systemd-user-sessions.service
>            319ms systemd-update-utmp-runlevel.service
>            310ms systemd-random-seed.service
>            284ms kmod-static-nodes.service
>            257ms sys-fs-fuse-connections.mount
>            250ms systemd-remount-fs.service
>            227ms console-setup.service
>
> Any suggestions to bring it down further?
> I am using a X desktop with slim as the login manager with autologin on 
> LCD.
> From the generic board startup services, I am using network over USB (not 
> the serial over USB and flash over USB) parts.
> What else should I be able to nuke to get the time faster?
>
> Regards,
> -amit 
>
>  
>

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to beagleboard+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beagleboard/dc55f4ae-c762-40be-a617-a097493a5e93n%40googlegroups.com.

Reply via email to