From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jacob Gorm Hansen Subject: Small address spaces update Date: Mon, 25 Apr 2005 20:41:45 -0700 Message-ID: <426DB879.40805@diku.dk> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel List-Id: xen-devel@lists.xenproject.org hi, I have managed to get the 'small address spaces' hack running in xen-unstable. I have relinked my dom0 userspace (busybox + vmtools) and kernel to share the range 0xf0000000 - 0xfc000000, and my domU kernel to stay below 0xf0000000, on x86-32. I use the top part of the domU page directories as a cache for the currently running I/O-domain (right now I only have one, dom0), and so unless I need to update this cache I can context switch without flushing the TLB. This saves more 99% af TLB flushes when doing simple I/O-bound stuff such as running iPerf inside a domU. In some cases (when dom0 has updated or switched its page directory) I need to update the cache in the domU page directory, that involves doing a memcpy of 48*4 = 192 bytes. How frequently this happens depends on the kind of stuff running in dom0 userspace, i.e. for the iperf test is very rare. At this point I have no idea if this increases domU I/O performance, as right now I am getting bad iperf numbers in domU both with and without this patch applied to Xen, but just wanted to let people know that I am still working on this thing when I can find the time. Best regards, Jacob