After allocating 32MB or more contiguous memory, huge pages would seem to be ideal.
Signed-off-by: Richard Henderson <r...@twiddle.net> --- exec.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/exec.c b/exec.c index df67938..ab07f68 100644 --- a/exec.c +++ b/exec.c @@ -602,6 +602,8 @@ static inline void code_gen_alloc(size_t tb_size) exit(1); } + qemu_madvise(code_gen_buffer, code_gen_buffer_size, QEMU_MADV_HUGEPAGE); + /* Steal room for the prologue at the end of the buffer. This ensures (via the MAX_CODE_GEN_BUFFER_SIZE limits above) that direct branches from TB's to the prologue are going to be in range. It also means -- 1.7.11.7