Easy Installer so slow

Hi,

We use Verdin iMX8M-Plus for one of our products. We created a custom image based on Toradex Reference BSP 5.6 and want to flash the image into the Verdin module using Easy Installer and Dahlia v1.1C.

You can find all relevant information at below pictures.
It starts writing the image at speeds about 6-7MB but later it drops to 2MB.

Is this expected to flash Verdin module at this speed or something wrong?

Thank you.

Looks like your USB drive is a bottleneck. Could you try some fast SD card instead?

1 Like

I concur. You need at least Class 10. Standard cheapies will have you grow old waiting on them.

1 Like

Hi @alex.tx ,

The USB memory that I use for the Tezi image is the one of the fastest in its class.
SanDisk Extreme Go

Write transfer speed 100 MB/s
Read transfer speed 400 MB/s

And I confirm that it is very fast while coping Tezi image to it. (550MB copied in 7 seconds, read back in 3 seconds)

I will try it with a SDCARD Sandisk Extreme Pro 32 GB which is

Write transfer speed 90 MB/s
Read transfer speed 100 MB/s
Memory card class Class 10

I will let you know.

Here is the result with SDCard:

I don’t know if it is better. It fluctuates between 1.7 to 6MB/sec.

What is the expected write speed?

1 Like

But if I use a image one from Internet for example Toradex Reference Multimedia Image 6.1.0, the speed is obviously higher:

Hi @Fide !

Which carrier board are you using?

Can you please check on Toradex Easy Installer which speed your SD / USB stick card is advertising?

Also, could you please perform another test?

  • Download to your USB stick and to your SD card the same Toradex Reference you tested and check the speed? This way we can compare apples to apples :slight_smile:

Best regards,

Hi @henrique.tx,

This is at Dahlia Carrier Board v1.1C.

Can you please check on Toradex Easy Installer which speed your SD / USB stick card is advertising?

Where can I check that?

I will also conduct the test you suggested and let you know the result.

Thank you.

Hi @Fide !

You can use lsusb and its options like -t. -v

Example from my notebook:

[ 10:12 ]  [ ~ ]
 $ lsusb -tv
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/8p, 10000M
    ID 1d6b:0003 Linux Foundation 3.0 root hub
    |__ Port 6: Dev 2, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
        ID 0781:558a SanDisk Corp.

You can see the 5000M, which means 5Gbps.

Best regards,

1 Like

Hello @Fide ,
Were you able to solve your issue ? Do you need more help on our side?

Best regards,
Josep

1 Like

Hi @henrique.tx and @josep.tx,

Sorry for my late reply. Unfortunately the issue is still there for me.
I’m connected to Dahlia Board again to verify asked parameters through its Debug USB port.
I loaded the uuu image in recovery mode, connect my USB flash drive to the Dahlia and execute following commands to see if it is recognized as USB 3.0 and it seems the answer is yes.

/ # cat /etc/issue
Toradex Easy Installer 5.6.0-devel-20220309+build.296 ()
/ # dmesg
[  491.478012] usb 2-1.2: new SuperSpeed Gen 1 USB device number 4 using xhci-hcd
[  491.502139] usb-storage 2-1.2:1.0: USB Mass Storage device detected
[  491.502675] scsi host0: usb-storage 2-1.2:1.0
[  492.519754] scsi 0:0:0:0: Direct-Access     SanDisk  Extreme Pro      0    PQ: 0 ANSI: 6
[  492.522205] sd 0:0:0:0: [sda] 500170752 512-byte logical blocks: (256 GB/239 GiB)
[  492.522946] sd 0:0:0:0: [sda] Write Protect is off
[  492.522954] sd 0:0:0:0: [sda] Mode Sense: 43 00 00 00
[  492.523208] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[  492.552087]  sda: sda1
[  492.553549] sd 0:0:0:0: [sda] Attached SCSI removable disk
/ # lsusb -tv
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 5000M
    ID 1d6b:0003
    |__ Port 1: Dev 2, If 0, Class=, Driver=hub/3p, 5000M
        ID 0424:5744
        |__ Port 2: Dev 4, If 0, Class=, Driver=usb-storage, 5000M
            ID 0781:5588
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M
    ID 1d6b:0002
    |__ Port 1: Dev 2, If 0, Class=, Driver=hub/4p, 480M
        ID 0424:2744
        |__ Port 4: Dev 3, If 0, Class=, Driver=, 480M
            ID 0424:2740

I have downloaded the Verdin Linux Reference Multimedia Image (5.7.2-devel-20230326+build.774) from here and extracted it to the USB flash drive that I have.

Here the speed is about 50MB/sec:

But when I pick our own image and click install:

Initial speed starts at 6MB/sec then drops to 2-3MB/sec.

Any idea why it could be?

Thank you.

I have also tried with Toradex Easy Installer 5.7.2, the result is same.

/ # cat /etc/issue
Toradex Easy Installer 5.7.2+build.14 ()

Hi @Fide !

With @rafael.tx’s help, we performed some investigation.

We compared the unpacking of your rootfs against the unpacking of the rootfs from Reference Multimedia Image 5.7.2+build.21 for Verdin iMX8M Plus

Untar comparison

In my notebook (i7-10750H CPU @ 2.60GHz, 32GB RAM) I unpacked each rootfs image in its own folder using the time command:

 $ time sudo tar -C rootfs -xf gprarr-image-dev-verdin-imx8mp-proceq-gprarr.tar.bz2
sudo tar -C rootfs -xf gprarr-image-dev-verdin-imx8mp-proceq-gprarr.tar.bz2  0,02s user 0,01s system 0% cpu 42,297 total

 $ time sudo tar -C rootfs -xf Reference-Multimedia-Image-verdin-imx8mp.tar.xz
sudo tar -C rootfs -xf Reference-Multimedia-Image-verdin-imx8mp.tar.xz  0,00s user 0,01s system 0% cpu 11,215 total

But using my notebook for this is not a reasonable way of comparing times. We performed the same using a Verdin iMX8M Plus Q 4GB WB IT V1.0B.

Module information:

root@verdin-imx8mp-06849036:~# ./tdx-info

Software summary
------------------------------------------------------------
Bootloader:               U-Boot
Kernel version:           5.4.193-5.7.0+git.f78299297185 #1 SMP PREEMPT Mon Jul 11 14:42:03 UTC 2022
Kernel command line:      root=PARTUUID=68578448-02 ro rootwait console=tty1 console=ttymxc2,115200 consoleblank=0 earlycon
Distro name:              NAME="TDX Wayland with XWayland"
Distro version:           VERSION_ID=5.7.0-build.20
Hostname:                 verdin-imx8mp-06849036
------------------------------------------------------------

Hardware info
------------------------------------------------------------
HW model:                 Toradex Verdin iMX8M Plus WB on Verdin Development Board
Toradex version:          0058 V1.0B
Serial number:            06849036
Processor arch:           aarch64
------------------------------------------------------------

Results:

root@verdin-imx8mp-06849036:~# time tar -C rootfs_fide/ -xf gprarr-image-dev-verdin-imx8mp-proceq-gprarr.tar.bz2

real    4m25.608s
user    4m15.656s
sys     0m36.302s

root@verdin-imx8mp-06849036:~# time tar -C rootfs_tdx/ -xf Reference-Multimedia-Image-verdin-imx8mp.tar.xz

real    0m53.559s
user    0m48.403s
sys     0m14.735s

Testing .tar.xz with your rootfs

Performing another test, we re-compressed your rootfs using .tar.xz:

$ cd rootfs_fide
$ sudo tar cJf ../gprarr-image-dev-verdin-imx8mp-proceq-gprarr.tar.xz .

And, then again decompressing on my notebook:

 $ mkdir rootfs_fide_tar-xz
 $ time sudo tar -C rootfs_fide_tar-xz -xJf gprarr-image-dev-verdin-imx8mp-proceq-gprarr.tar.xz
sudo tar -C rootfs_fide_tar-xz -xJf   0,00s user 0,00s system 0% cpu 17,042 total

And on the module:

root@verdin-imx8mp-06849036:~# mkdir rootfs_fide_tar-xz
root@verdin-imx8mp-06849036:~# time tar -C rootfs_fide_tar-xz/ -xf gprarr-image-dev-verdin-imx8mp-proceq-gprarr.tar.xz                          

real    1m17.101s
user    1m3.517s
sys     0m21.419s

Result summary

Time to unpack the rootfs using Reference Multimedia 5.7.2 your rootfs .tar.bz2 your rootfs .tar.xz
My notebook 11.2s 42.3s 17.0s
Verdin iMX8M Plus Q 4GB WB IT V1.0B 53.6s 265.6s (4m25.6s) 77.1s (1m17s)

Since Toradex Easy Installer needs to unpack your image on the module, seems like using .tar.xz instead of .tar.bz2 (which you are using in your image).

Testing your rootfs with .tar.xz

We quickly tested your image using .tar.xz and during flashing.
There was quick peak of 60MB/s as well as some periods of ~0.5MB/s as the lowest transfer rate, but the average was probably around 15~17MB/s.

Let us know if this helps you.


Remark about image.json

Your image.json advertises uncompressed_size of more than 3GB for your rootfs, but the rootfs your shared had an uncompressed size smaller than 2GB.

Best regards,

2 Likes

Hi @henrique.tx,

Thank you for the detailed investigation. I understand the way you approach the issue. We will change the compression type from .tar.bz2 to .tar.xz and also look at uncompressed_size why it is reported as more than 3GB.

I will let you know the result.

Regards,
Fide.

@henrique.tx and @rafael.tx,

I just wanted to let you know that changing tar.bz2 to tar.xz as suggested solved the speed problem.

Thanks again,
Fide.

Hi @Fide !

That’s great!

Thanks for the update :slight_smile:

Have a nice day!