[PATCH 0/4] 8xx: Optimize TLB Miss code.
Joakim Tjernlund
joakim.tjernlund at transmode.se
Wed Mar 3 19:48:11 EST 2010
Heiko Schocher <hs at denx.de> wrote on 2010/03/03 09:02:47:
>
> Hello Joakim,
>
> I tried your 4 patches on a MPC855M based system:
Thanks a lot for testing this for me!
>
> -bash-3.2# cat /proc/cpuinfo
> processor : 0
> cpu : 8xx
> clock : 66.000000MHz
> revision : 0.0 (pvr 0050 0000)
> bogomips : 8.25
> timebase : 4125000
> platform : TQM8xx
> model : TQM8xx
> Memory : 32 MB
> -bash-3.2# cat /proc/version
> Linux version 2.6.33-rc6-01500-gbddcb41-dirty (hs at xpert.denx.de) (gcc version
> 4.2.2) #9 Tue Mar 2 18:08:49 CET 2010
> -bash-3.2#
>
> First I looked for the Boottime:
>
> Booting Linux:
>
> 2.6.33 2.6.33tunned
> ... until "Freeing unused kernel memory" message (= enter user space) ~4s ~4s
> ... until "login:" message (= full multi-user mode) 56s 56s
>
> and I did a Performance test with lmbench, see:
> http://sourceforge.net/projects/lmbench
>
> Here the results:
> (The first 4 rows are the results for the kernel without your patches,
> the next 4 rows are the results for the kernel with your patches)
>
> make[1]: Entering directory `/home/hs/lmbench-3.0-a9/results'
I see both ups and downs in this test, don't quite understand why.
What is your config w.r.t SWAP, MODULES, CPU6 and CPU15?
>
> L M B E N C H 3 . 0 S U M M A R Y
> ------------------------------------
> (Alpha software, do not distribute)
>
> Basic system parameters
> ------------------------------------------------------------------------------
> Host OS Description Mhz tlb cache mem scal
> pages line par load
> bytes
> --------- ------------- ----------------------- ---- ----- ----- ------ ----
> tqm8xx Linux 2.6.33- powerpc-linux-gnu 66 32 16 1.0400 1
> tqm8xx Linux 2.6.33- powerpc-linux-gnu 66 7 16 1.0400 1
> tqm8xx Linux 2.6.33- powerpc-linux-gnu 66 7 16 1.0400 1
> tqm8xx Linux 2.6.33- powerpc-linux-gnu 66 32 16 1.0400 1
> tqm8xx Linux 2.6.33- powerpc-linux-gnu 66 32 16 1.0400 1
> tqm8xx Linux 2.6.33- powerpc-linux-gnu 66 7 16 1.0400 1
> tqm8xx Linux 2.6.33- powerpc-linux-gnu 66 7 16 1.0400 1
> tqm8xx Linux 2.6.33- powerpc-linux-gnu 66 32 16 1.0400 1
>
> Processor, Processes - times in microseconds - smaller is better
> ------------------------------------------------------------------------------
> Host OS Mhz null null open slct sig sig fork exec sh
> call I/O stat clos TCP inst hndl proc proc proc
> --------- ------------- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
> tqm8xx Linux 2.6.33- 66 2.97 10.3 129. 1377 272. 21.8 91.3 6949 29.K 89.K
> tqm8xx Linux 2.6.33- 66 3.06 10.5 124. 1375 273. 21.8 91.3 7136 30.K 89.K
> tqm8xx Linux 2.6.33- 66 3.06 10.6 129. 1365 272. 21.2 96.6 6889 29.K 89.K
> tqm8xx Linux 2.6.33- 66 3.06 10.5 124. 1309 272. 21.8 101. 6896 29.K 89.K
> tqm8xx Linux 2.6.33- 66 2.97 8.86 126. 1336 273. 21.7 84.2 6785 29.K 88.K
> tqm8xx Linux 2.6.33- 66 3.06 8.90 130. 1343 263. 21.3 84.7 7080 29.K 88.K
> tqm8xx Linux 2.6.33- 66 3.52 8.97 129. 1339 270. 22.4 84.4 6823 29.K 88.K
> tqm8xx Linux 2.6.33- 66 2.97 8.99 127. 1333 261. 22.4 87.0 7037 29.K 87.K
>
[SNIP integer/float test, these are not relevant]
>
> Context switching - times in microseconds - smaller is better
> -------------------------------------------------------------------------
> Host OS 2p/0K 2p/16K 2p/64K 8p/16K 8p/64K 16p/16K 16p/64K
> ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw
> --------- ------------- ------ ------ ------ ------ ------ ------- -------
> tqm8xx Linux 2.6.33- 92.6 109.6 110.9 137.5 173.8 151.8 199.3
> tqm8xx Linux 2.6.33- 95.8 108.5 104.7 137.1 172.7 150.9 194.7
> tqm8xx Linux 2.6.33- 95.8 118.8 97.5 146.4 162.0 160.8 190.1
> tqm8xx Linux 2.6.33- 92.9 111.9 101.0 138.1 166.6 152.3 192.0
> tqm8xx Linux 2.6.33- 90.8 108.5 116.2 134.3 171.8 147.1 210.0
> tqm8xx Linux 2.6.33- 100.1 111.4 105.0 136.4 173.1 148.3 200.8
> tqm8xx Linux 2.6.33- 98.7 111.3 111.8 135.7 172.5 147.9 200.9
> tqm8xx Linux 2.6.33- 92.0 117.9 109.9 141.6 170.4 154.9 196.4
>
> *Local* Communication latencies in microseconds - smaller is better
> ---------------------------------------------------------------------
> Host OS 2p/0K Pipe AF UDP RPC/ TCP RPC/ TCP
> ctxsw UNIX UDP TCP conn
> --------- ------------- ----- ----- ---- ----- ----- ----- ----- ----
> tqm8xx Linux 2.6.33- 92.6 338.4 581. 720.1 1047. 2749
> tqm8xx Linux 2.6.33- 95.8 334.0 595. 725.0 1051. 2754
> tqm8xx Linux 2.6.33- 95.8 330.9 574. 720.1 1047. 2772
> tqm8xx Linux 2.6.33- 92.9 338.8 574. 714.3 1046. 2742
> tqm8xx Linux 2.6.33- 90.8 322.1 576. 734.9 1012. 2706
> tqm8xx Linux 2.6.33- 100.1 326.0 565. 719.5 1027. 2702
> tqm8xx Linux 2.6.33- 98.7 322.8 571. 713.8 1028. 2711
> tqm8xx Linux 2.6.33- 92.0 328.1 549. 714.1 1022. 2696
>
> *Remote* Communication latencies in microseconds - smaller is better
> ---------------------------------------------------------------------
> Host OS UDP RPC/ TCP RPC/ TCP
> UDP TCP conn
> --------- ------------- ----- ----- ----- ----- ----
> tqm8xx Linux 2.6.33-
> tqm8xx Linux 2.6.33-
> tqm8xx Linux 2.6.33-
> tqm8xx Linux 2.6.33-
> tqm8xx Linux 2.6.33-
> tqm8xx Linux 2.6.33-
> tqm8xx Linux 2.6.33-
> tqm8xx Linux 2.6.33-
>
> File & VM system latencies in microseconds - smaller is better
> -------------------------------------------------------------------------------
> Host OS 0K File 10K File Mmap Prot Page 100fd
> Create Delete Create Delete Latency Fault Fault selct
> --------- ------------- ------ ------ ------ ------ ------- ----- ------- -----
> tqm8xx Linux 2.6.33- 5917.2 3968.3 31.2K 4329.0 4147.0 18.8 34.1 135.2
> tqm8xx Linux 2.6.33- 5714.3 3937.0 32.3K 6060.6 4210.0 14.2 34.5 131.4
> tqm8xx Linux 2.6.33- 5747.1 4000.0 31.2K 4329.0 4114.0 7.692 34.0 133.1
> tqm8xx Linux 2.6.33- 5747.1 4081.6 30.3K 4273.5 4100.0 18.2 34.2 135.0
> tqm8xx Linux 2.6.33- 5714.3 3952.6 31.2K 4273.5 4130.0 33.5 35.1 136.1
> tqm8xx Linux 2.6.33- 5714.3 3906.2 31.2K 6060.6 4105.0 25.7 35.5 135.9
> tqm8xx Linux 2.6.33- 5681.8 3921.6 32.3K 4255.3 4144.0 23.5 35.0 134.9
> tqm8xx Linux 2.6.33- 5649.7 3937.0 30.3K 4237.3 4116.0 21.6 35.3 135.3
>
> *Local* Communication bandwidths in MB/s - bigger is better
> -----------------------------------------------------------------------------
> Host OS Pipe AF TCP File Mmap Bcopy Bcopy Mem Mem
> UNIX reread reread (libc) (hand) read write
> --------- ------------- ---- ---- ---- ------ ------ ------ ------ ---- -----
> tqm8xx Linux 2.6.33- 14.8 15.6 10.1 21.0 55.5 32.3 34.5 55.6 53.0
> tqm8xx Linux 2.6.33- 14.8 15.6 10.7 21.0 55.5 32.3 34.5 55.6 53.0
> tqm8xx Linux 2.6.33- 14.8 15.7 12.7 21.0 55.5 32.3 34.5 55.6 53.0
> tqm8xx Linux 2.6.33- 14.8 15.6 13.9 21.0 55.5 32.3 34.5 55.6 53.0
> tqm8xx Linux 2.6.33- 14.8 15.8 12.9 21.0 55.7 32.5 34.6 55.8 53.1
> tqm8xx Linux 2.6.33- 14.8 15.7 14.0 21.0 55.7 32.4 34.6 55.8 53.1
> tqm8xx Linux 2.6.33- 14.8 15.8 12.9 21.0 55.7 32.5 34.6 55.8 53.1
> tqm8xx Linux 2.6.33- 14.8 15.8 13.0 21.0 55.7 32.5 34.6 55.8 53.1
>
> Memory latencies in nanoseconds - smaller is better
> (WARNING - may not be correct, check graphs)
> ------------------------------------------------------------------------------
> Host OS Mhz L1 $ L2 $ Main mem Rand mem Guesses
> --------- ------------- --- ---- ---- -------- -------- -------
> tqm8xx Linux 2.6.33- 66 31.8 141.0 184.0 1165.7
> tqm8xx Linux 2.6.33- 66 31.8 141.2 184.2 1165.3
> tqm8xx Linux 2.6.33- 66 31.8 141.3 184.3 1165.6
> tqm8xx Linux 2.6.33- 66 31.8 141.3 184.2 1166.2
> tqm8xx Linux 2.6.33- 66 31.8 141.0 171.8 1100.5 No L2 cache?
> tqm8xx Linux 2.6.33- 66 31.8 141.0 171.8 1102.5 No L2 cache?
> tqm8xx Linux 2.6.33- 66 31.8 141.0 171.8 1101.7 No L2 cache?
> tqm8xx Linux 2.6.33- 66 31.8 141.0 171.8 1101.6 No L2 cache?
> make[1]: Leaving directory `/home/hs/lmbench-3.0-a9/results'
>
> bye
> Heiko
>
> --
> DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
>
More information about the Linuxppc-dev
mailing list