[Pixman] MIPS blt and fill routines.
Nemanja Lukic
nlukic at mips.com
Wed Feb 29 03:04:32 PST 2012
Per code review:
- Main loop in the pixman_fill_buff16_mips routine now uses 4-byte writes
- Added alignment check to ensure that we don't encounter unaligned write with the sw instruction (pixman_fill_buff16_mips)
- Added lowlevel-blt-bench results (src_n_0565/src_n_8888) in the log message.
Benchmark results (lowlevel-blt-bench) on Malta board (@1Ghz):
Referent:
src_n_0565 = L1: 238.14 L2: 233.15 M: 57.88 ( 77.23%) HT: 53.22 VT: 49.99 R: 47.73 RT: 24.79 ( 91Kops/s)
src_n_8888 = L1: 190.19 L2: 187.57 M: 28.94 ( 77.23%) HT: 27.91 VT: 27.33 R: 26.64 RT: 14.68 ( 77Kops/s)
Previous commit (with the 2-byte stores for pixman_fill_buff16_mips):
src_n_0565 = L1: 718.59 L2: 245.10 M:236.82 (315.64%) HT: 58.08 VT: 52.38 R: 51.62 RT: 24.56 ( 90Kops/s)
src_n_8888 = L1: 694.35 L2: 113.36 M:133.68 (356.36%) HT: 39.00 VT: 37.14 R: 34.88 RT: 15.77 ( 79Kops/s)
Optimized (with the 4-byte stores for pixman_fill_buff16_mips)
src_n_0565 = L1:1081.39 L2: 258.22 M:189.59 (252.91%) HT: 60.23 VT: 55.01 R: 53.44 RT: 23.68 ( 89Kops/s)
src_n_8888 = L1: 653.46 L2: 113.55 M:135.26 (360.86%) HT: 38.99 VT: 37.38 R: 34.95 RT: 18.67 ( 84Kops/s)
More information about the Pixman
mailing list