[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] memory: memory_region_transaction_commit() slow
From: |
Etienne Martineau |
Subject: |
Re: [Qemu-devel] memory: memory_region_transaction_commit() slow |
Date: |
Thu, 26 Jun 2014 11:02:55 -0400 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130330 Thunderbird/17.0.5 |
On 14-06-25 11:52 PM, Peter Crosthwaite wrote:
> On Thu, Jun 26, 2014 at 4:58 AM, Paolo Bonzini <address@hidden> wrote:
>> Il 25/06/2014 19:53, Etienne Martineau ha scritto:
>>
>>>
>>> It seems to me that there is a scale issue O(n) in
>>> memory_region_transaction_commit().
>>>
>>> Basically the time it takes to rebuild the memory view during device
>>> assignment
>>> pci_bridge_update_mappings() increase linearly with respect to the number
>>> of
>>> device already assigned to the guest.
>>
>>
>> That's correct, unfortunately. It can be fixed, it's not hard but also not
>> trivial.
>>
>> Basically you can detect address spaces whose memory region is an alias of
>> an address space's root memory region. You can then reuse that address
>> space's FlatView instead of building another one.
>>
>
> Sounds like my shareable address spaces scheme:
>
> http://lists.gnu.org/archive/html/qemu-devel/2014-06/msg00366.html
>
> Its not MR alias aware but shouldn't be too hard to extend. Would this help?
>
> Regards,
> Peter
>
>> Paolo
>>
Hi Peter,
I 'think' I understand what you are proposing. My problem is that a) I don't
see how to covert pci_bridge to that PMA model
and b) I'm not sure if this is going to address the issue I'm facing and if yes
then how ?
thanks,
Etienne