|
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.
[Prev in Thread] | Current Thread | [Next in Thread] |