[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Xen-devel] [PATCH] x86: add SSE-based copy_page()



Hi Dan,
clflush(flush a cache line; you may need a loop to flush a page.) or 
wbinvd(flush all the caches) should be what you need to flush caches on x86.

Thanks,
-- Dexuan


-----Original Message-----
From: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx 
[mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Dan Magenheimer
Sent: 2008年11月14日 7:42
To: Jan Beulich
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: RE: [Xen-devel] [PATCH] x86: add SSE-based copy_page()

> This very much depends on whether the page(s) are in any caches - in
> the general case (e.g. when dealing with large sets of data, or data
> just read from disk), you'd expect both pages (source and destination)
> not to be in any cache. This is where using the streaming instructions
> helps.
> 
> However, when dealing with a small set of pages (or even just a single
> source/destination pair), you'd easily run entirely on L1 or 
> L2 data, which
> certainly performs better using the non-streaming instructions.

Is there a way to force-flush-cache on a page full of data?  (I knew
how to do this once on ia64...)  I can easily measure warm-start but
am not sure how to measure cold-start without some kind of flush.

Thanks,
Dan

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.