On Mon, 17 Aug 2020 09:51:20 -0700 (PDT), in
gmane.comp.hardware.beagleboard.user Paul Beam
<[email protected]> wrote:

>I have a PocketBeagle image I want to reproduce and put on other units.  I 
>had the boot time down to about 35 seconds.  I used Win32DiskImager to make 
>an image and then put it on another SD card.  When I put this in a new PB, 
>the boot time is closer to 2 minutes!  It seems this may not the the right 
>way to do things.  Do I need to run some initialization script on each 
>unit, or is there a better way to duplicate things once you have them the 
>way you want them?

        Are they the same brand (and even /production run/) SD cards?

        A cheap Class 10 card when used with a journaling file system or with
many scattered small files can perform very badly compared to "slower"
Class 2/4/6 cards from the better brands.

        Class 10 cards are rated for /streaming/ a single file on freshly
FAT(x) formatted card. IE: a single data stream (video) and empty card.
Class 2/4/6 are rated for small files on fragmented media (still photos
where some may have been deleted).

        The higher end cards can keep multiple "allocation units" open in
parallel. Cheap cards may only be able to keep two AUs open at a time (on
FAT that's the FAT itself and one data file; on a journaling system one may
be continuously opening/closing AUs as one navigates inodes, data,
journal).

        Copying from a message I wrote back in May, in a different group...

-=-=-=-=-
        Well, https://www.pidramble.com/wiki/benchmarks/microsd-cards would be
a start.

-=-=-=- 16 GB Kingston Class 10 in an R-Pi 3B+ (1.2GHz)
pi@rpi3bplus-1:~/benchmark$ sudo ./benchmark.sh

Raspberry Pi Dramble microSD benchmarks
microSD clock: 50.000 MHz

Running hdparm test...

/dev/mmcblk0:
 HDIO_DRIVE_CMD(identify) failed: Invalid argument
 Timing buffered disk reads:  66 MB in  3.02 seconds =  21.85 MB/sec

Running dd test...

51200+0 records in
51200+0 records out
419430400 bytes (419 MB, 400 MiB) copied, 54.3339 s, 7.7 MB/s

Running iozone test...
        Iozone: Performance Test of File I/O
                Version $Revision: 3.434 $
                Compiled for 32 bit mode.
                Build: linux-arm

        Contributors:William Norcott, Don Capps, Isom Crawford, Kirby
Collins
                     Al Slater, Scott Rhine, Mike Wisner, Ken Goss
                     Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR,
                     Randy Dunlap, Mark Montague, Dan Million, Gavin
Brebner,
                     Jean-Marc Zucconi, Jeff Blomberg, Benny Halevy, Dave
Boone,
                     Erik Habbinga, Kris Strecker, Walter Wong, Joshua
Root,
                     Fabrice Bacchella, Zhenghua Xue, Qin Li, Darren
Sawyer,
                     Vangel Bojaxhi, Ben England, Vikentsi Lapa,
                     Alexey Skidanov.

        Run began: Tue May 19 13:38:19 2020

        Include fsync in write timing
        O_DIRECT feature enabled
        Auto Mode
        File size set to 102400 kB
        Record Size 4 kB
        Command line used: ./iozone -e -I -a -s 100M -r 4k -i 0 -i 1 -i 2
        Output is in kBytes/sec
        Time Resolution = 0.000001 seconds.
        Processor cache size set to 1024 kBytes.
        Processor cache line size set to 32 bytes.
        File stride size set to 17 * record size.
                                                              random random
bkwd    record    stride
              kB  reclen    write  rewrite    read    reread    read write
read   rewrite      read   fwrite frewrite    fread  freread
          102400       4      264      242     5349     5803     5136 239

iozone test complete.

microSD card benchmark complete!




-=-=-=- 8 GB SanDisk Class 4 in a BeagleBone Black (1GHz)
debian@beaglebone:~/benchmark$ sudo ./benchmark.sh
[sudo] password for debian:

Raspberry Pi Dramble microSD benchmarks

Running hdparm test...

/dev/mmcblk0:
 HDIO_DRIVE_CMD(identify) failed: Invalid argument
 Timing buffered disk reads:  66 MB in  3.01 seconds =  21.89 MB/sec

Running dd test...

51200+0 records in
51200+0 records out
419430400 bytes (419 MB, 400 MiB) copied, 70.7736 s, 5.9 MB/s

Running iozone test...
        Iozone: Performance Test of File I/O
                Version $Revision: 3.434 $
                Compiled for 32 bit mode.
                Build: linux-arm

        Contributors:William Norcott, Don Capps, Isom Crawford, Kirby
Collins
                     Al Slater, Scott Rhine, Mike Wisner, Ken Goss
                     Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR,
                     Randy Dunlap, Mark Montague, Dan Million, Gavin
Brebner,
                     Jean-Marc Zucconi, Jeff Blomberg, Benny Halevy, Dave
Boone,
                     Erik Habbinga, Kris Strecker, Walter Wong, Joshua
Root,
                     Fabrice Bacchella, Zhenghua Xue, Qin Li, Darren
Sawyer,
                     Vangel Bojaxhi, Ben England, Vikentsi Lapa,
                     Alexey Skidanov.

        Run began: Tue May 19 13:26:14 2020

        Include fsync in write timing
        O_DIRECT feature enabled
        Auto Mode
        File size set to 102400 kB
        Record Size 4 kB
        Command line used: ./iozone -e -I -a -s 100M -r 4k -i 0 -i 1 -i 2
        Output is in kBytes/sec
        Time Resolution = 0.000001 seconds.
        Processor cache size set to 1024 kBytes.
        Processor cache line size set to 32 bytes.
        File stride size set to 17 * record size.
                                                              random random
bkwd    record    stride
              kB  reclen    write  rewrite    read    reread    read write
read   rewrite      read   fwrite frewrite    fread  freread
          102400       4     1192     1249     6587     6597     6541 635

iozone test complete.

microSD card benchmark complete!

debian@beaglebone:~/benchmark$
-=-=-=-

        The BBB with a Class 4 card took 7 minutes for iozone... I'm still
waiting for the R-Pi Class 10 after over 10 minutes. Heck -- I killed that
run and restarted, just in case my moving PuTTY windows around somehow
froze the output.

...     Finally finished, it took 22 minutes for iozone!

        Things to note:

*       HDPARM speeds are very close, the R-Pi at 21.85 MB/s, the "slower" BBB
at 21.89 MB/s

*       DD test, R-Pi at 7.7 MB/s, BBB at 5.9 MB/s

*       But iozone shows extreme differences!
                                                                                
                        Random   Random
                                        Write   Rewrite Read    Reread  Read    
 Write
R-Pi: 102400       4      264      242     5349     5803     5136      239 
BBB: 102400       4     1192     1249    6587     6597     6541      635  
   
        Speed multiple  4.5X    5.2X    1.2X    1.1X    1.3X    2.7X

        The high-grade "slow" Class 4 SanDisk, in a slower computer,
outperforms the low-bidder "faster" Class 10 Kingston in the faster
computer. The Kingston appears to be killed by the swapping between data
and journal metadata, and later commit of the journal.

-=-=-=-=-


-- 
Dennis L Bieber

-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beagleboard/nqjljfp0ank0dink2e9011932ktokcaka8%404ax.com.

Reply via email to