Most of the difference comes from the virtio-blk boot. Systemd to kata-agent boot times are similar
[ 1.002949] Freeing unused kernel image memory: 2016K |[ 0.844629] Freeing unused kernel image memory: 2016K
[ 1.018758] Freeing unused kernel image memory: 1204K |[ 0.844878] Freeing unused kernel image memory: 1204K
[ 1.018838] Run /usr/lib/systemd/systemd as init process |[ 0.845072] Run /usr/lib/systemd/systemd as init process
[ 1.248975] systemd[1]: systemd 241 running in system mode. (+PAM +AUDIT -SELINUX +IMA -APPARMOR -SMACK -SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ -LZ4 +SECCOMP +B|[ 1.004513] systemd[1]: systemd 241 running in system mode. (+PAM +AUDIT -SELINUX +IMA -APPARMOR -SMACK -SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ -LZ4 +SECCOMP +B
LKID +ELFUTILS +KMOD -IDN2 -IDN -PCRE2 default-hierarchy=legacy) |LKID +ELFUTILS +KMOD -IDN2 -IDN -PCRE2 default-hierarchy=legacy)
[ 1.248989] systemd[1]: No virtualization found in DMI |[ 1.005417] systemd[1]: No virtualization found in DMI
[ 1.249051] systemd[1]: Virtualization found, CPUID=KVMKVMKVM |[ 1.005679] systemd[1]: Virtualization found, CPUID=KVMKVMKVM
[ 1.249054] systemd[1]: Found VM virtualization kvm |[ 1.006121] systemd[1]: Found VM virtualization kvm
[ 1.249057] systemd[1]: Detected virtualization kvm. |[ 1.006742] systemd[1]: Detected virtualization kvm.
[ 1.249070] systemd[1]: Detected architecture x86-64. |[ 1.007170] systemd[1]: Detected architecture x86-64.
[ 1.249219] systemd[1]: Mounting cgroup to /sys/fs/cgroup/net_cls,net_prio of type cgroup with options net_cls,net_prio. |[ 1.007487] systemd[1]: Mounting cgroup to /sys/fs/cgroup/perf_event of type cgroup with options perf_event.
[ 1.249470] systemd[1]: Mounting cgroup to /sys/fs/cgroup/devices of type cgroup with options devices. |[ 1.008095] systemd[1]: Mounting cgroup to /sys/fs/cgroup/cpuset of type cgroup with options cpuset.
[ 1.249616] systemd[1]: Mounting cgroup to /sys/fs/cgroup/pids of type cgroup with options pids. |[ 1.008793] systemd[1]: Mounting cgroup to /sys/fs/cgroup/cpu,cpuacct of type cgroup with options cpu,cpuacct.
[ 1.249760] systemd[1]: Mounting cgroup to /sys/fs/cgroup/freezer of type cgroup with options freezer. |[ 1.014317] systemd[1]: Mounting cgroup to /sys/fs/cgroup/freezer of type cgroup with options freezer.
[ 1.755766] systemd-bless-boot-generator[65]: Skipping generator, not an EFI boot. |[ 1.121243] systemd-fstab-generator[72]: Parsing /etc/fstab
[ 1.927883] systemd-gpt-auto-generator[70]: Failed to chase block device '/', ignoring: No such file or directory |[ 1.131252] systemd-gpt-auto-generator[74]: Failed to chase block device '/', ignoring: No such file or directory
[ 1.931486] systemd-fstab-generator[68]: Parsing /etc/fstab |[ 1.160818] systemd-bless-boot-generator[69]: Skipping generator, not an EFI boot.
[ 1.947422] systemd-gpt-auto-generator[70]: vda1: Root device /dev/vda. |[ 1.165828] systemd-gpt-auto-generator[74]: pmem0p1: Root device /dev/pmem0.
[ 2.027787] systemd-gpt-auto-generator[70]: No suitable partition table found, ignoring. |[ 1.186432] systemd-getty-generator[73]: Automatically adding serial getty for /dev/hvc0.
[ 2.486653] systemd[72]: systemd-sysctl.service: Failed to connect stdout to the journal socket, ignoring: No such file or directory |[ 1.194498] systemd-getty-generator[73]: Automatically adding serial getty for /dev/hvc0.
[ 2.486728] systemd[72]: systemd-sysctl.service: Executing: /usr/lib/systemd/systemd-sysctl |[ 1.218441] systemd-gpt-auto-generator[74]: No suitable partition table found, ignoring.
[ 2.491182] systemd-sysctl[72]: Parsing /usr/lib/sysctl.d/50-coredump.conf |[ 1.360185] systemd[76]: systemd-sysctl.service: Failed to connect stdout to the journal socket, ignoring: No such file or directory
[ 2.491424] systemd-sysctl[72]: Parsing /usr/lib/sysctl.d/50-default.conf |[ 1.361103] systemd[76]: systemd-sysctl.service: Executing: /usr/lib/systemd/systemd-sysctl
[ 2.491914] systemd-sysctl[72]: Setting 'kernel/core_pattern' to '|/usr/lib/systemd/coredump-wrapper %E %P %u %g %s %t %c %h %e'. |[ 1.366309] systemd-sysctl[76]: Parsing /usr/lib/sysctl.d/50-coredump.conf
[ 2.491925] systemd-sysctl[72]: Setting 'kernel/sysrq' to '16'. |[ 1.366637] systemd-sysctl[76]: Parsing /usr/lib/sysctl.d/50-default.conf
[ 2.491932] systemd-sysctl[72]: Couldn't write '16' to 'kernel/sysrq', ignoring: No such file or directory |[ 1.368742] systemd-sysctl[76]: Setting 'kernel/core_pattern' to '|/usr/lib/systemd/coredump-wrapper %E %P %u %g %s %t %c %h %e'.
[ 2.491934] systemd-sysctl[72]: Setting 'kernel/core_uses_pid' to '1'. |[ 1.370046] systemd-sysctl[76]: Setting 'kernel/sysrq' to '16'.
[ 2.491941] systemd-sysctl[72]: Setting 'net/ipv4/conf/all/rp_filter' to '2'. |[ 1.371051] systemd-sysctl[76]: Couldn't write '16' to 'kernel/sysrq', ignoring: No such file or directory
[ 2.492018] systemd-sysctl[72]: Setting 'net/ipv4/conf/all/accept_source_route' to '0'. |[ 1.371402] systemd-sysctl[76]: Setting 'kernel/core_uses_pid' to '1'.
[ 2.492026] systemd-sysctl[72]: Setting 'net/ipv4/conf/all/promote_secondaries' to '1'. |[ 1.371634] systemd-sysctl[76]: Setting 'net/ipv4/conf/all/rp_filter' to '2'.
[ 2.492033] systemd-sysctl[72]: Setting 'net/core/default_qdisc' to 'fq'. |[ 1.371926] systemd-sysctl[76]: Setting 'net/ipv4/conf/all/accept_source_route' to '0'.
[ 2.492660] systemd-sysctl: 4 output lines suppressed due to ratelimiting |[ 1.374050] systemd-sysctl[76]: Setting 'net/ipv4/conf/all/promote_secondaries' to '1'.
[ 2.500007] systemd[78]: kata-agent.service: Executing: /usr/bin/kata-agent |[ 1.374470] systemd-sysctl[76]: Setting 'net/core/default_qdisc' to 'fq'.
[ 3.730852] virtio_blk virtio1: [vdb] new size: 0 512-byte logical blocks (0 B/0 B) |[ 1.376157] systemd-sysctl: 4 output lines suppressed due to ratelimiting
[ 3.732979] virtio_blk virtio1: [vdb] new size: 0 512-byte logical blocks (0 B/0 B) |[ 1.396514] systemd[80]: kata-agent.service: Executing: /usr/bin/kata-agent
[ 3.777937] XFS (vdb): Mounting V5 Filesystem |[ 2.259826] scsi 0:0:0:0: Direct-Access QEMU QEMU HARDDISK 2.5+ PQ: 0 ANSI: 5
[ 3.845988] XFS (vdb): Ending clean mount |[ 2.260448] sd 0:0:0:0: Attached scsi generic sg0 type 0
|[ 2.260656] sd 0:0:0:0: Power-on or device reset occurred
|[ 2.261459] sd 0:0:0:0: [sda] 20971520 512-byte logical blocks: (10.7 GB/10.0 GiB)
|[ 2.261743] sd 0:0:0:0: [sda] Write Protect is off
|[ 2.261891] sd 0:0:0:0: [sda] Mode Sense: 63 00 00 08
|[ 2.262288] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
|[ 2.266875] sd 0:0:0:0: [sda] Attached SCSI disk
|[ 2.282785] pci 0000:00:02.0: PCI bridge to [bus 01]
|[ 2.283206] pci 0000:00:02.0: bridge window [io 0xc000-0xcfff]
|[ 2.284469] pci 0000:00:02.0: bridge window [mem 0xfe400000-0xfe5fffff]
|[ 2.285420] pci 0000:00:02.0: bridge window [mem 0xfe800000-0xfe9fffff 64bit pref]
|[ 2.290822] XFS (sda): Mounting V5 Filesystem
|[ 2.322011] XFS (sda): Ending clean mount
```
MP Boot Sequence 0.2s difference. But 0.4 extra in SMP Setup in firecracker. So FC is much faster till it does SMP boot