* kshmem & ACE
@ 2007-05-07 2:23 Wink Saville
[not found] ` <d4cf37a60705061923h4e4a033dq61da6e13bc126caf-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
0 siblings, 1 reply; 8+ messages in thread
From: Wink Saville @ 2007-05-07 2:23 UTC (permalink / raw)
To: kvm-devel
Hello,
I've posted patches for two features, kernel shared memory and Atomic Code
Execution, which I believe can be used to implement para-virtualized devices.
Could someone recommend a device that might make a good proof
of concept? I was thinking may be a block device.
Any suggestions and additional comments would be helpful.
Thanks,
Wink Saville
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
^ permalink raw reply [flat|nested] 8+ messages in thread[parent not found: <d4cf37a60705061923h4e4a033dq61da6e13bc126caf-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* Re: kshmem & ACE [not found] ` <d4cf37a60705061923h4e4a033dq61da6e13bc126caf-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> @ 2007-05-07 7:03 ` Dor Laor [not found] ` <64F9B87B6B770947A9F8391472E032160BA96969-yEcIvxbTEBqsx+V+t5oei8rau4O3wl8o3fe8/T/H7NteoWH0uzbU5w@public.gmane.org> 2007-05-07 10:26 ` Avi Kivity 1 sibling, 1 reply; 8+ messages in thread From: Dor Laor @ 2007-05-07 7:03 UTC (permalink / raw) To: Wink Saville, kvm-devel >Hello, > >I've posted patches for two features, kernel shared memory and Atomic Code >Execution, which I believe can be used to implement para-virtualized >devices. >Could someone recommend a device that might make a good proof >of concept? I was thinking may be a block device. The KVM has an unmerged PV block device developed by Arjan van de Ven, he might be interested. > >Any suggestions and additional comments would be helpful. In general IMHO if the PV devices {net, block} are implemented in the kernel then they cannot enjoy from the shared memory. If these devices are implemented in user space the chances are bigger, although the guest memory is mapped by user space anyway. Maybe you can build a very efficient inter guest communication channel? > >Thanks, > >Wink Saville > >----------------------------------------------------------------------- -- >This SF.net email is sponsored by DB2 Express >Download DB2 Express C - the FREE version of DB2 express and take >control of your XML. No limits. Just data. Click to get it now. >http://sourceforge.net/powerbar/db2/ >_______________________________________________ >kvm-devel mailing list >kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org >https://lists.sourceforge.net/lists/listinfo/kvm-devel ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <64F9B87B6B770947A9F8391472E032160BA96969-yEcIvxbTEBqsx+V+t5oei8rau4O3wl8o3fe8/T/H7NteoWH0uzbU5w@public.gmane.org>]
* Re: kshmem & ACE [not found] ` <64F9B87B6B770947A9F8391472E032160BA96969-yEcIvxbTEBqsx+V+t5oei8rau4O3wl8o3fe8/T/H7NteoWH0uzbU5w@public.gmane.org> @ 2007-05-07 14:30 ` Anthony Liguori [not found] ` <463F3815.9000807-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org> 2007-05-07 15:52 ` Wink Saville 1 sibling, 1 reply; 8+ messages in thread From: Anthony Liguori @ 2007-05-07 14:30 UTC (permalink / raw) To: Dor Laor; +Cc: kvm-devel Dor Laor wrote: >> Hello, >> >> I've posted patches for two features, kernel shared memory and Atomic >> > Code > >> Execution, which I believe can be used to implement para-virtualized >> devices. >> Could someone recommend a device that might make a good proof >> of concept? I was thinking may be a block device. >> > > The KVM has an unmerged PV block device developed by Arjan van de Ven, > he might be interested. > > >> Any suggestions and additional comments would be helpful. >> > > In general IMHO if the PV devices {net, block} are implemented in the > kernel then they cannot enjoy from the shared memory. If these devices > The emulated block devices already have "shared memory" with the guest in the form of DMA since the guest's physical memory is mapped in the host's va space. An interesting PoC may be something akin to XenSocket. See http://www.xensource.com/files/xensummit_4/SuzanneMcIntosh_XenSummit_2007.pdf Regards, Anthony Liguori > are implemented in user space the chances are bigger, although the guest > memory is mapped by user space anyway. > > Maybe you can build a very efficient inter guest communication channel? > > >> Thanks, >> >> Wink Saville >> >> ----------------------------------------------------------------------- >> > -- > >> This SF.net email is sponsored by DB2 Express >> Download DB2 Express C - the FREE version of DB2 express and take >> control of your XML. No limits. Just data. Click to get it now. >> http://sourceforge.net/powerbar/db2/ >> _______________________________________________ >> kvm-devel mailing list >> kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org >> https://lists.sourceforge.net/lists/listinfo/kvm-devel >> > > ------------------------------------------------------------------------- > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > _______________________________________________ > kvm-devel mailing list > kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org > https://lists.sourceforge.net/lists/listinfo/kvm-devel > > ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <463F3815.9000807-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org>]
* Re: kshmem & ACE [not found] ` <463F3815.9000807-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org> @ 2007-05-07 16:08 ` Wink Saville 0 siblings, 0 replies; 8+ messages in thread From: Wink Saville @ 2007-05-07 16:08 UTC (permalink / raw) To: Anthony Liguori; +Cc: kvm-devel > > The emulated block devices already have "shared memory" with the guest > in the form of DMA since the guest's physical memory is mapped in the > host's va space. > > An interesting PoC may be something akin to XenSocket. See > http://www.xensource.com/files/xensummit_4/SuzanneMcIntosh_XenSummit_2007.pdf > > Regards, > > Anthony Liguori > I took a quick look at the slides and it seems similar to the technique I'm proposing especially in the aspect of using messaging. One difference is that I hope to not require any copying of data if the communication is between trusted entities. Thanks, Wink Saville ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: kshmem & ACE [not found] ` <64F9B87B6B770947A9F8391472E032160BA96969-yEcIvxbTEBqsx+V+t5oei8rau4O3wl8o3fe8/T/H7NteoWH0uzbU5w@public.gmane.org> 2007-05-07 14:30 ` Anthony Liguori @ 2007-05-07 15:52 ` Wink Saville 1 sibling, 0 replies; 8+ messages in thread From: Wink Saville @ 2007-05-07 15:52 UTC (permalink / raw) To: Dor Laor; +Cc: kvm-devel On 5/7/07, Dor Laor <dor.laor-atKUWr5tajBWk0Htik3J/w@public.gmane.org> wrote: > > The KVM has an unmerged PV block device developed by Arjan van de Ven, > he might be interested. I would be very interested to see it, where is it if its "unmerged"? I'm sorry but I'm new to this list. > > > > >Any suggestions and additional comments would be helpful. > > In general IMHO if the PV devices {net, block} are implemented in the > kernel then they cannot enjoy from the shared memory. If these devices > are implemented in user space the chances are bigger, although the guest > memory is mapped by user space anyway. > > Maybe you can build a very efficient inter guest communication channel? > Actually, I hope the technique I'm proposing might lead to an efficient way of implementing user space devices/drivers. But that will likely be in the far future:) In the mean time this might be a way for a more efficient inter guest and mechansim, we'll see. Wink Saville ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: kshmem & ACE [not found] ` <d4cf37a60705061923h4e4a033dq61da6e13bc126caf-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2007-05-07 7:03 ` Dor Laor @ 2007-05-07 10:26 ` Avi Kivity [not found] ` <463EFEE9.8050602-atKUWr5tajBWk0Htik3J/w@public.gmane.org> 1 sibling, 1 reply; 8+ messages in thread From: Avi Kivity @ 2007-05-07 10:26 UTC (permalink / raw) To: Wink Saville; +Cc: kvm-devel Wink Saville wrote: > Hello, > > I've posted patches for two features, kernel shared memory and Atomic Code > Execution, which I believe can be used to implement para-virtualized devices. > Could someone recommend a device that might make a good proof > of concept? I was thinking may be a block device. > > Any suggestions and additional comments would be helpful. > > Most paravirtual devices use atomic operations (or even just raw memory accesses and memory barriers), which don't need any special infrastructure. This effectively makes them message-passing protocols rather than shared memory protocol. I can't see offhand why sharing data structures would bring a great improvement, but maybe I'm tied to the old way of thinking. -- error compiling committee.c: too many arguments to function ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <463EFEE9.8050602-atKUWr5tajBWk0Htik3J/w@public.gmane.org>]
* Re: kshmem & ACE [not found] ` <463EFEE9.8050602-atKUWr5tajBWk0Htik3J/w@public.gmane.org> @ 2007-05-07 15:57 ` Wink Saville [not found] ` <d4cf37a60705070857v13a7e8abx3a51853cd0fddcb5-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 0 siblings, 1 reply; 8+ messages in thread From: Wink Saville @ 2007-05-07 15:57 UTC (permalink / raw) To: Avi Kivity; +Cc: kvm-devel > > Most paravirtual devices use atomic operations (or even just raw memory > accesses and memory barriers), which don't need any special > infrastructure. This effectively makes them message-passing protocols > rather than shared memory protocol. I can't see offhand why sharing > data structures would bring a great improvement, but maybe I'm tied to > the old way of thinking. > One of the uses of kshmem/ACE will be an implementation of a message passing technique that I hope to be quite general. Since this appears to be a common technique then maybe there is nothing new in what I've done which may make it redundant or may be a real contribution if it is more general then current techniques. Where might I find the current implementations of the PV devices? Wink Saville ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ^ permalink raw reply [flat|nested] 8+ messages in thread
[parent not found: <d4cf37a60705070857v13a7e8abx3a51853cd0fddcb5-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* Re: kshmem & ACE [not found] ` <d4cf37a60705070857v13a7e8abx3a51853cd0fddcb5-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> @ 2007-05-08 7:57 ` Avi Kivity 0 siblings, 0 replies; 8+ messages in thread From: Avi Kivity @ 2007-05-08 7:57 UTC (permalink / raw) To: Wink Saville; +Cc: kvm-devel Wink Saville wrote: >> >> Most paravirtual devices use atomic operations (or even just raw memory >> accesses and memory barriers), which don't need any special >> infrastructure. This effectively makes them message-passing protocols >> rather than shared memory protocol. I can't see offhand why sharing >> data structures would bring a great improvement, but maybe I'm tied to >> the old way of thinking. >> > > One of the uses of kshmem/ACE will be an implementation of a message > passing technique that I hope to be quite general. Since this appears to > be a common technique then maybe there is nothing new in what I've done > which may make it redundant or may be a real contribution if it is more > general then current techniques. > > Where might I find the current implementations of the PV devices? > A good well-tuned example is the Xen paravirtualized drivers. See http://article.gmane.org/gmane.linux.kernel.virtualization/2659 for a driver, and http://article.gmane.org/gmane.linux.kernel.virtualization/2660 (ring.h) for the underlying machinery. -- error compiling committee.c: too many arguments to function ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2007-05-08 7:57 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-05-07 2:23 kshmem & ACE Wink Saville
[not found] ` <d4cf37a60705061923h4e4a033dq61da6e13bc126caf-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-07 7:03 ` Dor Laor
[not found] ` <64F9B87B6B770947A9F8391472E032160BA96969-yEcIvxbTEBqsx+V+t5oei8rau4O3wl8o3fe8/T/H7NteoWH0uzbU5w@public.gmane.org>
2007-05-07 14:30 ` Anthony Liguori
[not found] ` <463F3815.9000807-rdkfGonbjUSkNkDKm+mE6A@public.gmane.org>
2007-05-07 16:08 ` Wink Saville
2007-05-07 15:52 ` Wink Saville
2007-05-07 10:26 ` Avi Kivity
[not found] ` <463EFEE9.8050602-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-05-07 15:57 ` Wink Saville
[not found] ` <d4cf37a60705070857v13a7e8abx3a51853cd0fddcb5-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2007-05-08 7:57 ` Avi Kivity
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox