[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] GSoC 2017 Proposal: TCG performance enhancements
From: |
Pranith Kumar |
Subject: |
Re: [Qemu-devel] GSoC 2017 Proposal: TCG performance enhancements |
Date: |
Mon, 27 Mar 2017 23:07:14 -0400 |
Hi Paolo,
On Mon, Mar 27, 2017 at 7:32 AM, Paolo Bonzini <address@hidden> wrote:
>
>
> On 25/03/2017 17:52, Pranith Kumar wrote:
>> * Implement an LRU translation block code cache.
>>
>> In the current TCG design, when the translation cache fills up, we flush
>> all
>> the translated blocks (TBs) to free up space. We can improve this situation
>> by not flushing the TBs that were recently used i.e., by implementing an
>> LRU
>> policy for freeing the blocks. This should avoid the re-translation
>> overhead
>> for frequently used blocks and improve performance.
>
> IIRC, Emilio measured one flush every roughly 10 seconds with 128 MB
> cache in system emulation mode---and "never" is a pretty accurate
> estimate for user-mode emulation. This means that a really hot block
> would be retranslated very quickly.
>
OK. The problem with re-translation is that it is a serializing step
in the current design. All the cores have to wait for the translation
to complete. I think it will be a win if we could avoid it, although,
I should admit that I am not sure how much that benefit would be.
--
Pranith