Skip to content

Mainline Kernel 4.20.x

Verschoben Images
  • Kamil hat endlich das Reboot Problem hinbekommen. Fettes Danke schön!! Nun kann man endlich einfach

    sudo reboot
    

    eintippen und die Kiste lebt danach wieder 🙂 Im Moment wird auch die NVMe SSD korrekt eingebunden.

    System

    rock64@rockpro64:/mnt$ uname -a
    Linux rockpro64 4.18.0-rc3-1037-ayufan-gb95494bd8d0f #1 SMP PREEMPT Tue Jul 3 20:00:21 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux
    

    iozone

    rock64@rockpro64:/mnt$ sudo iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 
    	Iozone: Performance Test of File I/O
    	        Version $Revision: 3.429 $
    		Compiled for 64 bit mode.
    		Build: linux 
    
    	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.
    
    	Run began: Wed Jul  4 14:33:19 2018
    
    	Include fsync in write timing
    	O_DIRECT feature enabled
    	Auto Mode
    	File size set to 102400 kB
    	Record Size 4 kB
    	Record Size 16 kB
    	Record Size 512 kB
    	Record Size 1024 kB
    	Record Size 16384 kB
    	Command line used: iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -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    54400   112108   122677   123147    48970   110305                                                          
              102400      16   187878   333338   354818   358794   177519   330848                                                          
              102400     512   950675  1041740   919524   941410   772637  1010119                                                          
              102400    1024   985240  1039340   938399   961619   867759  1082360                                                          
              102400   16384   693795  1359947  1338852  1388810  1376730  1356480                                                          
    
    iozone test complete.
    

    iperf3

    rock64@rockpro64:/mnt$ iperf3 -c 192.168.3.213
    Connecting to host 192.168.3.213, port 5201
    [  4] local 192.168.3.3 port 43660 connected to 192.168.3.213 port 5201
    [ ID] Interval           Transfer     Bandwidth       Retr  Cwnd
    [  4]   0.00-1.00   sec   114 MBytes   956 Mbits/sec    0    335 KBytes       
    [  4]   1.00-2.00   sec   112 MBytes   943 Mbits/sec   11    288 KBytes       
    [  4]   2.00-3.00   sec   112 MBytes   941 Mbits/sec   11    320 KBytes       
    [  4]   3.00-4.00   sec   112 MBytes   941 Mbits/sec    0    349 KBytes       
    [  4]   4.00-5.00   sec   112 MBytes   942 Mbits/sec   11    315 KBytes       
    [  4]   5.00-6.00   sec   112 MBytes   941 Mbits/sec   11    308 KBytes       
    [  4]   6.00-7.00   sec   112 MBytes   942 Mbits/sec   11    322 KBytes       
    [  4]   7.00-8.00   sec   112 MBytes   941 Mbits/sec   10    315 KBytes       
    [  4]   8.00-9.00   sec   112 MBytes   941 Mbits/sec   10    338 KBytes       
    [  4]   9.00-10.00  sec   112 MBytes   941 Mbits/sec   21    334 KBytes       
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bandwidth       Retr
    [  4]   0.00-10.00  sec  1.10 GBytes   943 Mbits/sec   96             sender
    [  4]   0.00-10.00  sec  1.10 GBytes   941 Mbits/sec                  receiver
    
    iperf Done.
    rock64@rockpro64:/mnt$ iperf3 -s
    -----------------------------------------------------------
    Server listening on 5201
    -----------------------------------------------------------
    Accepted connection from 192.168.3.213, port 40238
    [  5] local 192.168.3.3 port 5201 connected to 192.168.3.213 port 40240
    [ ID] Interval           Transfer     Bandwidth
    [  5]   0.00-1.00   sec   109 MBytes   913 Mbits/sec                  
    [  5]   1.00-2.00   sec   112 MBytes   942 Mbits/sec                  
    [  5]   2.00-3.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   3.00-4.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   4.00-5.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   5.00-6.00   sec   112 MBytes   940 Mbits/sec                  
    [  5]   6.00-7.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   7.00-8.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   8.00-9.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   9.00-10.00  sec   112 MBytes   942 Mbits/sec                  
    [  5]  10.00-10.03  sec  3.05 MBytes   939 Mbits/sec                  
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bandwidth
    [  5]   0.00-10.03  sec  0.00 Bytes  0.00 bits/sec                  sender
    [  5]   0.00-10.03  sec  1.10 GBytes   938 Mbits/sec                  receiver
    -----------------------------------------------------------
    Server listening on 5201
    -----------------------------------------------------------
    

    USB3

    SSD SanDisk SSD plus 250GB

    rock64@rockpro64:/mnt$ sudo su
    root@rockpro64:/mnt# mount /dev/sda1 /media
    root@rockpro64:/mnt# cd /media
    root@rockpro64:/media# sudo iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 
    	Iozone: Performance Test of File I/O
    	        Version $Revision: 3.429 $
    		Compiled for 64 bit mode.
    		Build: linux 
    
    	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.
    
    	Run began: Wed Jul  4 14:41:21 2018
    
    	Include fsync in write timing
    	O_DIRECT feature enabled
    	Auto Mode
    	File size set to 102400 kB
    	Record Size 4 kB
    	Record Size 16 kB
    	Record Size 512 kB
    	Record Size 1024 kB
    	Record Size 16384 kB
    	Command line used: iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -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    25017    32476    45514    45759    17746    14057                                                          
              102400      16    58424    97006   126970   129510    52868    51883                                                          
              102400     512   276594   286436   260954   265792   261403   286173                                                          
              102400    1024   301257   314764   282678   289621   279472   312712                                                          
              102400   16384   307456   170212   193047   313594   380916   211619                                                          
    
    iozone test complete.
    

    Reboot

    Angeschlossen

    • NVMe Karte mit Samsung 960 EVO m.2 256GB
    • SSD SanDisk SSD plus 250GB
    • UART2 Modul
    • HDMI
    • 5A-Netzteil

    Reboot ohne Probleme. Mehrmals ohne Probleme getestet.

    So langsam wird das eine geile Kiste LOL

  • 4.18.0-rc3-1044-ayufan released

    beinhaltet nur eine Änderung für den Rock64, also für uns nicht interessant.

  • 4.18.0-rc3-1046-ayufan released

    beinhaltet eine Änderung für den ROCKPro64, irgendwas mit der SD-Karte.

    Mit dem Unterbau 0.7.7, das Beste was ich bis jetzt hier hatte. Bei jedem Booten kein Problem, jedes mal wird die NVMe-Karte erkannt. Juhu. Weiter testen......

    Kleines Problem - der Power-Button hat keine Funktion. Lt. Kamil liegt das am fehlenden Suspend-Modul im Mainline. Issue

  • 4.18.0-rc5-1048-ayufan released ✌

    • ayufan: dts: rockpro64: support sdr104 mode for sd-card

    Dieses Release ist als Latest Release gekennzeichnet. Heißt, wir haben hier einen ausreichend stabilen Stand.

    Auch hier gilt, Beiträge die ich mit ✌ kennzeichne könnt Ihr installieren, diese sind ausreichend getestet.

  • 4.18.0-rc3-1050-ayufan released ✌

    Ich kann nicht erkennen, was Kamil hier geändert hat!? 1048 ist nicht mehr Latest Release, dafür die 1050 jetzt.

  • 4.18.0-rc5-1052-ayufan released

    • defconfig: enable PWM FAN

    Damit sollte der Lüfter funktionieren.

  • 4.18.0-rc8-1054-ayufan released

    • dts: rockpro64: run spi-flash with 10MHz

    Kamil meinte dazu

    06/08/18 20:38
    <ayufan1> ugh, spi flash is working 🙂
    06/08/18 20:38
    <ayufan1> on rockpro64

  • 4.18.0-rc8-1056-ayufan released

    • external: defconfig: Add support for f2fs and crc32 (#6)
  • 4.18.0-rc8-1060-ayufan released

    • dev.mk: send only files of that kernel version
  • Nach zwei Monaten ein Zeichen 🙂

    4.19.0-rc4-1063-ayufan released

  • 4.19.0-rc4-1065-ayufan released ✌

    • ayufan: defconfig: support tehuti 10gbps adapter

    Ok, 10gbps Netzwerkadapter läuft beim Kamil. 👏

  • 4.19.0-rc4-1067-ayufan released

    • ayufan: dts: rockpro64: disable tx checksumming for gmac
  • 4.19.0-rc4-1069-ayufan released

    • ayufan: rockpro64: fix emmc boot: Revert "mmc: sdhci-of-arasan: Add CQHCI…
  • 4.19.0-rc4-1071-ayufan released

    • rockchip: pcie: limit bus number to 31 inclusive
  • 4.19.0-1073-ayufan released

    Liste der Änderungen nicht gefunden. Es sind ein paar Dinge wohl geändert worden. Kann man hier nachlesen.

  • 4.20.0-rc6-1075-ayufan released

    Jede Menge Änderungen im dts File, die aber von Kamil noch nicht angepasst sind. Mein Testimage hier läuft mit PCIe NVMe SSD nicht. Also, noch abwarten!!

    (19:26:49) FrankM: ayufan5: 4.20 without pcie ? nvm card don't recognized. with 4.4 no problem.
    (19:31:02) ayufan5: FrankM: I did not yet fix dts 🙂

  • 4.20.0-1077-ayufan released

    Änderungen sind mir zur Zeit noch nicht bekannt. Test steht noch aus.

    PCIe NVMe Karte geht wieder.

    Kernel

    rock64@rockpro64:/mnt$ uname -a
    Linux rockpro64 4.20.0-1077-ayufan-gdeb16128b458 #ayufan SMP PREEMPT Sun Dec 30 12:00:17 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux
    

    iozone

    rock64@rockpro64:/mnt$ sudo iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 
    	Iozone: Performance Test of File I/O
    	        Version $Revision: 3.429 $
    		Compiled for 64 bit mode.
    		Build: linux 
    
    	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.
    
    	Run began: Sun Dec 30 13:50:15 2018
    
    	Include fsync in write timing
    	O_DIRECT feature enabled
    	Auto Mode
    	File size set to 102400 kB
    	Record Size 4 kB
    	Record Size 16 kB
    	Record Size 512 kB
    	Record Size 1024 kB
    	Record Size 16384 kB
    	Command line used: iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -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   105475   150901   165040   168152    55921   146649                                                          
              102400      16   323077   419261   446377   452714   199703   418553                                                          
              102400     512  1035241  1048622   962876   983026   776039  1044747                                                          
              102400    1024  1066733  1024204   922389   946779   863405  1042164                                                          
              102400   16384   942288  1384367  1395018  1457672  1446158  1372405                                                          
    
    iozone test complete.
    
  • 4.20.0-1081-ayufan & 4.20.0-1083-ayufan released

    1081 & 1083

    mmc: core: Add MMC Command Queue Support kernel parameter

    This parameter offers a workaround for cards that report command queue
    (CMDQ) support but don't work correctly when CMDQ is enabled. At least
    some ROCKPro64 + Foresee (32GB) eMMC card combinations have trouble
    working correctly. Setting mmc_cmdqueue=off in kernel command line
    disables CMDQ support and may help with troublesome hardware.

  • 4.20.0-1088-ayufan released ✌

    ayufan: defconfig: add rockchip_linux_defconfig

  • Läuft damit auch der delock Sata Controller?
    Ich befürchte du testest auf einem separatem RP64, oder?

  • Mainline 5.13.x

    Images
    1
    0 Stimmen
    1 Beiträge
    176 Aufrufe
    Niemand hat geantwortet
  • RockPro64 - Mainline Kernel 5.9.x vom Kamil

    Images
    5
    0 Stimmen
    5 Beiträge
    403 Aufrufe
    FrankMF

    Hoppla, nach langer Zeit mal was Neues vom Kamil.

    5.9.0-1146-ayufan released

    WIP: cdn_dp hdmi audio switch
  • Mainline 5.6.x

    Images
    19
    0 Stimmen
    19 Beiträge
    782 Aufrufe
    FrankMF

    5.6.0-1138-ayufan released

    ayufan: dts: pinebook-pro: support more DP type-c docks

    Link Preview Image Release 5.6.0-1138-ayufan · ayufan-rock64/linux-mainline-kernel

    Linux kernel source tree. Contribute to ayufan-rock64/linux-mainline-kernel development by creating an account on GitHub.

    favicon

    GitHub (github.com)

  • Image 0.9.16 - Kurztest

    ROCKPro64
    5
    0 Stimmen
    5 Beiträge
    365 Aufrufe
    FrankMF

    Kurzer Test, ok ist was länger geworden 🙂 Mit Debian Buster Minimal habe ich es nicht hinbekommen 😞 Das soll aber nicht heißen, das es nicht geht. WLan auf der Konsole ist nicht meine Stärke. Ok, dann Desktop.

    bionic-mate-rockpro64-0.9.16-1163-armhf.img.xz

    Installiert, kurz WLan 5G aktiviert, eingeloggt. Netzwerkkabel entfernt. Firefox angeworfen, Rammstein Viedo in 1080p angeworfen. Läuft alles einwandfrei.

    b834128c-30c3-43cd-ba43-b69b41783b57-grafik.png

    Und PCIe NVMe SSD geht auch 😉

    Das Desktop System ist mittlerweile richtig gut zu benutzen. Aber ich bin verwöhnt, mir ist das immer viel zu langsam. Das soll aber niemanden davon abhalten, sich das mal anzusehen. Je nach Einsatzzweck sicherlich interessant.

  • Mainline 5.3.x

    Images
    3
    0 Stimmen
    3 Beiträge
    390 Aufrufe
    FrankMF

    5.3.0-1119-ayufan released

    ayufan: defconfig: enable DRM_PANFROST/DRM_LIMA
  • Mainline Kernel 5.0.x

    Images
    11
    0 Stimmen
    11 Beiträge
    855 Aufrufe
    FrankMF

    5.0.0-1105-ayufan released

    ayufan: dts: rockpro64: enable sdio0
  • SATA Karte Marvell 88SE9230 Chipsatz

    Angeheftet Hardware
    19
    0 Stimmen
    19 Beiträge
    6k Aufrufe
    FrankMF

    Ok, es gibt noch eine andere Möglichkeit.

    Kamil hat mir noch ein wenig geholfen. Mit folgender Änderung werden die Platten gefunden.

    hmm, I had to add /etc/default/extlinux: libahci.skip_host_reset=1

    Sieht dann so aus.

    # Configure timeout to choose the kernel # TIMEOUT="10" # Configure default kernel to boot: check all kernels in `/boot/extlinux/extlinux.conf` # DEFAULT="kernel-4.4.126-rockchip-ayufan-253" # Configure additional kernel configuration options APPEND="$APPEND root=LABEL=linux-root rootwait rootfstype=ext4 libahci.skip_host_reset=1"

    Danach waren die Platten zu sehen.

    root@rockpro64:/tmp/etc/default# blkid /dev/sda2: SEC_TYPE="msdos" LABEL_FATBOOT="boot-efi" LABEL="boot-efi" UUID="ABCD-FC7D" TYPE="vfat" PARTLABEL="boot_efi" PARTUUID="72e36967-4050-4bb3-8f8f-bf6755c38f28" /dev/sda3: LABEL="linux-boot" UUID="8e289a3e-0f9b-4da1-a147-51e03390637c" TYPE="ext4" PARTLABEL="linux_boot" PARTUUID="fe944fd2-3e42-4202-8a95-656e9bdb4be6" /dev/sda4: LABEL="linux-root" UUID="3e9513c6-dfd1-48c9-bee2-04bb5a153056" TYPE="ext4" PARTLABEL="linux_root" PARTUUID="d2d1dd88-030d-4f74-998f-7c9ce7d385d0" /dev/sdb2: SEC_TYPE="msdos" LABEL_FATBOOT="boot-efi" LABEL="boot-efi" UUID="56C9-F745" TYPE="vfat" PARTLABEL="boot_efi" PARTUUID="919c8f73-5f25-4a01-9072-3a5ed9a88ff2" /dev/sdb3: LABEL="linux-boot" UUID="23c19647-f4a1-4197-a877-f1bb03456bef" TYPE="ext4" PARTLABEL="linux_boot" PARTUUID="093d0cc0-d122-4dce-aeb5-4e266b4b7d9d" /dev/sdb4: LABEL="linux-root" UUID="f1c74331-8318-4ee8-a4f7-f0c169fb9944" TYPE="ext4" PARTLABEL="linux_root" PARTUUID="964ab457-58d5-40c4-bb02-dfd37bd2f0da" /dev/sda1: PARTLABEL="loader1" PARTUUID="37466429-e4a4-495c-b9a1-3f74625a3cae" /dev/sdb1: PARTLABEL="loader1" PARTUUID="33f692b3-54cb-4a37-b602-21a2baf32fa0"

    Aber auch hiermit ist ein Boot von der SATA Platte nicht möglich.

    Ich möchte hier noch was vom kamil zitieren.

    (11:44:09) ayufanWithPM: will look later, but this controller is tricky, also on x86 as well
    (11:44:16) ayufanWithPM: jms585 seems to be significantly more stable

    Evt. bekommt er das gefixt 😉

  • stretch-minimal-rockpro64

    Verschoben Linux
    3
    0 Stimmen
    3 Beiträge
    981 Aufrufe
    FrankMF

    Mal ein Test was der Speicher so kann.

    rock64@rockpro64:~/tinymembench$ ./tinymembench tinymembench v0.4.9 (simple benchmark for memory throughput and latency) ========================================================================== == Memory bandwidth tests == == == == Note 1: 1MB = 1000000 bytes == == Note 2: Results for 'copy' tests show how many bytes can be == == copied per second (adding together read and writen == == bytes would have provided twice higher numbers) == == Note 3: 2-pass copy means that we are using a small temporary buffer == == to first fetch data into it, and only then write it to the == == destination (source -> L1 cache, L1 cache -> destination) == == Note 4: If sample standard deviation exceeds 0.1%, it is shown in == == brackets == ========================================================================== C copy backwards : 2812.7 MB/s C copy backwards (32 byte blocks) : 2811.9 MB/s C copy backwards (64 byte blocks) : 2632.8 MB/s C copy : 2667.2 MB/s C copy prefetched (32 bytes step) : 2633.5 MB/s C copy prefetched (64 bytes step) : 2640.8 MB/s C 2-pass copy : 2509.8 MB/s C 2-pass copy prefetched (32 bytes step) : 2431.6 MB/s C 2-pass copy prefetched (64 bytes step) : 2424.1 MB/s C fill : 4887.7 MB/s (0.5%) C fill (shuffle within 16 byte blocks) : 4883.0 MB/s C fill (shuffle within 32 byte blocks) : 4889.3 MB/s C fill (shuffle within 64 byte blocks) : 4889.2 MB/s --- standard memcpy : 2807.3 MB/s standard memset : 4890.4 MB/s (0.3%) --- NEON LDP/STP copy : 2803.7 MB/s NEON LDP/STP copy pldl2strm (32 bytes step) : 2802.1 MB/s NEON LDP/STP copy pldl2strm (64 bytes step) : 2800.7 MB/s NEON LDP/STP copy pldl1keep (32 bytes step) : 2745.5 MB/s NEON LDP/STP copy pldl1keep (64 bytes step) : 2745.8 MB/s NEON LD1/ST1 copy : 2801.9 MB/s NEON STP fill : 4888.9 MB/s (0.3%) NEON STNP fill : 4850.1 MB/s ARM LDP/STP copy : 2803.8 MB/s ARM STP fill : 4893.0 MB/s (0.5%) ARM STNP fill : 4851.7 MB/s ========================================================================== == Framebuffer read tests. == == == == Many ARM devices use a part of the system memory as the framebuffer, == == typically mapped as uncached but with write-combining enabled. == == Writes to such framebuffers are quite fast, but reads are much == == slower and very sensitive to the alignment and the selection of == == CPU instructions which are used for accessing memory. == == == == Many x86 systems allocate the framebuffer in the GPU memory, == == accessible for the CPU via a relatively slow PCI-E bus. Moreover, == == PCI-E is asymmetric and handles reads a lot worse than writes. == == == == If uncached framebuffer reads are reasonably fast (at least 100 MB/s == == or preferably >300 MB/s), then using the shadow framebuffer layer == == is not necessary in Xorg DDX drivers, resulting in a nice overall == == performance improvement. For example, the xf86-video-fbturbo DDX == == uses this trick. == ========================================================================== NEON LDP/STP copy (from framebuffer) : 602.5 MB/s NEON LDP/STP 2-pass copy (from framebuffer) : 551.6 MB/s NEON LD1/ST1 copy (from framebuffer) : 667.1 MB/s NEON LD1/ST1 2-pass copy (from framebuffer) : 605.6 MB/s ARM LDP/STP copy (from framebuffer) : 445.3 MB/s ARM LDP/STP 2-pass copy (from framebuffer) : 428.8 MB/s ========================================================================== == Memory latency test == == == == Average time is measured for random memory accesses in the buffers == == of different sizes. The larger is the buffer, the more significant == == are relative contributions of TLB, L1/L2 cache misses and SDRAM == == accesses. For extremely large buffer sizes we are expecting to see == == page table walk with several requests to SDRAM for almost every == == memory access (though 64MiB is not nearly large enough to experience == == this effect to its fullest). == == == == Note 1: All the numbers are representing extra time, which needs to == == be added to L1 cache latency. The cycle timings for L1 cache == == latency can be usually found in the processor documentation. == == Note 2: Dual random read means that we are simultaneously performing == == two independent memory accesses at a time. In the case if == == the memory subsystem can't handle multiple outstanding == == requests, dual random read has the same timings as two == == single reads performed one after another. == ========================================================================== block size : single random read / dual random read 1024 : 0.0 ns / 0.0 ns 2048 : 0.0 ns / 0.0 ns 4096 : 0.0 ns / 0.0 ns 8192 : 0.0 ns / 0.0 ns 16384 : 0.0 ns / 0.0 ns 32768 : 0.0 ns / 0.0 ns 65536 : 4.5 ns / 7.2 ns 131072 : 6.8 ns / 9.7 ns 262144 : 9.8 ns / 12.8 ns 524288 : 11.4 ns / 14.7 ns 1048576 : 16.0 ns / 22.6 ns 2097152 : 114.0 ns / 175.3 ns 4194304 : 161.7 ns / 219.9 ns 8388608 : 190.7 ns / 241.5 ns 16777216 : 205.3 ns / 250.5 ns 33554432 : 212.9 ns / 255.5 ns 67108864 : 222.3 ns / 271.1 ns