|Subject:||Re: [Qemu-devel] [PATCH 0/4] qcow2: Improve cluster refcount update|
|Date:||Sun, 09 Nov 2008 10:32:22 -0600|
|User-agent:||Thunderbird 184.108.40.206 (X11/20080925)|
Avi Kivity wrote:
Anthony Liguori wrote:Laurent Vivier wrote:Le vendredi 07 novembre 2008 à 07:59 -0600, Anthony Liguori a écrit : In all cases #1 is totally useless as it is only cosmetic. #2 improves performance without aligned buffers and with "cache" set to default value.I'm currently rewriting the block-raw-posix.c O_DIRECT support. I'll commit your patches once I finish that.I'm switching everything to use the aio functions, introducing a memory pool so that we can efficiently allocate memory for new requests without having unbounded memory allocation, and switching all the synchronous functions to use the aio functions.What about locking? If clusters are already allocated and we don't need COW things are simple (and a global lock should suffice, provided it's released before the io is actually submitted), but are you planning to parallelize the metadata paths as well?
I'm still doing a global lock model and requests submitted while a request is pending is simply queued. There are certainly more effective strategies but this will work for now.
My larger goal is to totally eliminate synchronous reads/writes APIs in QEMU. They cause unending pain with the main loop.
Regards, Anthony Liguori
|[Prev in Thread]||Current Thread||[Next in Thread]|