[Pixman] disable cache prefetch on ATOM can improve the gtkperf performance

Liu, Xinyun xinyunliu at gmail.com
Wed Jun 2 05:06:54 PDT 2010


Hi Soren,

To disable cache prefetch with following change, the performance of
GtkDrawingArea_Pixbufs test case in gtkperf  can be improved about 2%.
It only affects ATOM platform, can we disable s/w prefetch for it?

patch:

diff --git a/pixman/pixman-sse2.c b/pixman/pixman-sse2.c
index d5349d7..28348f1 100644
--- a/pixman/pixman-sse2.c
+++ b/pixman/pixman-sse2.c
@@ -359,13 +359,13 @@ in_over_2x128 (__m128i* src_lo,
 static force_inline void
 cache_prefetch (__m128i* addr)
 {
-    _mm_prefetch ((void const*)addr, _MM_HINT_T0);
+//    _mm_prefetch ((void const*)addr, _MM_HINT_T0);
 }

 static force_inline void
 cache_prefetch_next (__m128i* addr)
 {
-    _mm_prefetch ((void const *)(addr + 4), _MM_HINT_T0); /* 64 bytes ahead */
+//    _mm_prefetch ((void const *)(addr + 4), _MM_HINT_T0); /* 64
bytes ahead */
 }

 /* prefetching NULL is very slow on some systems. don't do that. */


H/W:
1.
gfx: 8086:a011 Subsystem: 1043:83ac
cpu: Intel(R) Atom(TM) CPU N450   @ 1.66GHz

2. asus Eee PC 1000
gfx: 8086:27ae Subsystem: 1043:8340  945GM/GMS/GME
cpu: Intel(R) Atom(TM) CPU N270   @ 1.60GHz

Test:
gtkperf, GtkDrawingArea_Pixbufs, test rounds=10,000

-- 
Best Regards,
Liu, Xinyun


More information about the Pixman mailing list