qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [4600] variable dynamic translation buffer size


From: Fabrice Bellard
Subject: Re: [Qemu-devel] [4600] variable dynamic translation buffer size
Date: Wed, 28 May 2008 17:11:33 +0200
User-agent: Thunderbird 2.0.0.5 (X11/20070727)

Paul Brook wrote:
On Wednesday 28 May 2008, Fabrice Bellard wrote:
+        code_gen_buffer = mmap(NULL, code_gen_buffer_size,
+                               PROT_WRITE | PROT_READ | PROT_EXEC,
+                               flags, -1, 0);

I'd expect this to cause a significant performance regression on hosts that have limited branch range (i.e. everything except x86). The mmap region is almost never close to the application text segment, so all helper calls have to be indirect.

I knew that when I did the patch, but having a dynamic size on x86 hosts prevails.

The other hosts can still implement hacks if they really need to, either by reserving a huge data in BSS as it was done before or by using the proc/x/maps entries to compute a possible mmap() address. IMHO I think this is unnecessary as helpers should be the exception.

Fabrice.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]