Working on an entry-level project
Hi,
I'm interested in working on one of the entry-level projects on the TODO list to get my feet wet with the code. My preference is allowing CPU features to be passed to the guest. So I two things: I want to check if anyone is working on these already and if not can someone please expand a little on what is wanted? Any feedback or pointers on what features would be most useful is also welcome.
Thanks,
Cam
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/
A message that is not in the archive (sent off-list or not yet received): [email protected]
Quoted 9 lines · Cam Macdonell
Hi,
I'm interested in working on one of the entry-level projects on the TODO list to get my feet wet with the code. My preference is allowing CPU features to be passed to the guest. So I two things: I want to check if anyone is working on these already and if not can someone please expand a little on what is wanted? Any feedback or pointers on what features would be most useful is also welcome.
Quoted 3 lines
Thanks,
Cam
sorry, but patch for that feature was already wrote by someone.
but you are more than welcome to try/ask about something else.
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/
A message that is not in the archive (sent off-list or not yet received): 470CF853.5030502-atKUWr5tajBWk0Htik3J/[email protected]
Quoted 7 lines · Izik Eidus
Quoted 3 lines · Cam Macdonell
Hi,
sorry, but patch for that feature was already wrote by someone.
but you are more than welcome to try/ask about something else.
Ah, I should've searched the list. Is there another project of similar scope that would be of use?
Thanks,
Cam
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/
A message that is not in the archive (sent off-list or not yet received): [email protected]
Quoted 6 lines · Cam Macdonell
Quoted 4 lines · Izik Eidus
Quoted 3 lines · Cam Macdonell
Hi,
Quoted 7 lines
Quoted 3 lines
sorry, but patch for that feature was already wrote by someone.
but you are more than welcome to try/ask about something else.
Ah, I should've searched the list. Is there another project of similar scope that would be of use?
You may choose the interactivity improvements:in http://kvm.qumranet.com/kvmwiki/TODO
Dor
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
kvm-devel mailing list [email protected]
https://lists.sourceforge.net/lists/listinfo/kvm-devel
A message that is not in the archive (sent off-list or not yet received): 470DE190.7070701-atKUWr5tajBWk0Htik3J/[email protected]
Quoted 5 lines · Dor Laor
Cam Macdonell wrote:
You may choose the interactivity improvements:in
http://kvm.qumranet.com/kvmwiki/TODO
Dor
Thanks Dor, I'll look into it. Beyond the description, can you elaborate on the problem with frame rate during interactivity? Is the a simple test that reveals the problem?
Related to that, what is the status of VMGL's
(http://www.cs.toronto.edu/~andreslc/xen-gl/) integration with KVM or QEMU? Has anyone tried it? I've found some pages that refer to QEMU and VMGL but nothing definitive.
Cam
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/
A message that is not in the archive (sent off-list or not yet received): [email protected]
Quoted 5 lines · Cam Macdonell
Quoted 2 lines · Dor Laor
Cam Macdonell wrote:
Quoted 8 lines
Quoted 3 lines
You may choose the interactivity improvements:in
http://kvm.qumranet.com/kvmwiki/TODO
DorThanks Dor, I'll look into it. Beyond the description, can you elaborate on the problem with frame rate during interactivity? Is the a simple test that reveals the problem?
It's a simple test, when there are keyboard/mouse/display changes keep the refresh rate high. When there are no changes start decrease the rate until a minimum
reached. The performance benefit should also be checked since if it minimal there's no use for this optimization.
Quoted 5 lines
Related to that, what is the status of VMGL's
(http://www.cs.toronto.edu/~andreslc/xen-gl/) integration with KVM or QEMU? Has anyone tried it? I've found some pages that refer to QEMU and VMGL but nothing definitive.
Go ahead, there claim it can work with qemu. Try first with qemu since it is the repository to contribute the code to.
KVM will inherit it from qemu.
Quoted 2 lines
Cam
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/
A message that is not in the archive (sent off-list or not yet received): 470F477E.4060302-atKUWr5tajBWk0Htik3J/[email protected]
Quoted 7 lines · Dor Laor
Quoted 1 line · Cam Macdonell
It's a simple test, when there are keyboard/mouse/display changes keep the refresh rate high. When there are no changes start decrease the rate until a minimum
reached. The performance benefit should also be checked since if it minimal there's no use for this optimization.
Quoted 8 lines
Quoted 5 lines
Related to that, what is the status of VMGL's
(http://www.cs.toronto.edu/~andreslc/xen-gl/) integration with KVM or QEMU? Has anyone tried it? I've found some pages that refer to QEMU and VMGL but nothing definitive.Go ahead, there claim it can work with qemu. Try first with qemu since it is the repository to contribute the code to.
KVM will inherit it from qemu.
Is there a way to test with QEMU that is not painfully slow?
Cam
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/
A message that is not in the archive (sent off-list or not yet received): [email protected]
Quoted 13 lines · Cam Macdonell
Quoted 12 lines · Dor Laor
Quoted 1 line · Cam Macdonell
It's a simple test, when there are keyboard/mouse/display changes keep the refresh rate high. When there are no changes start decrease the rate until a minimum
reached. The performance benefit should also be checked since if it minimal there's no use for this optimization.Quoted 5 lines
Related to that, what is the status of VMGL's
(http://www.cs.toronto.edu/~andreslc/xen-gl/) integration with KVM or QEMU? Has anyone tried it? I've found some pages that refer to QEMU and VMGL but nothing definitive.
Quoted 7 lines
Quoted 3 lines
Go ahead, there claim it can work with qemu. Try first with qemu since it is the repository to contribute the code to. KVM will inherit it from qemu.
Is there a way to test with QEMU that is not painfully slow?
Cam
maybe using kqemu,
i guess you can work on kvm, if you keep checking that it still work on qemu.
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/
A message that is not in the archive (sent off-list or not yet received): 4710A053.4030400-atKUWr5tajBWk0Htik3J/[email protected]
Quoted 9 lines · On Sat, 13 Oct 2007 12:39:15 +0200 Izik Eidus…
Quoted 8 lines · Cam Macdonell
Quoted 7 lines · Dor Laor
Quoted 1 line · Cam Macdonell
It's a simple test, when there are keyboard/mouse/display changes keep the refresh rate high. When there are no changes start decrease the rate until a minimum
reached. The performance benefit should also be checked since if it minimal there's no use for this optimization.
Even if it doesn't bring any performance benefits, I think that having a smoothly moving mouse cursor is useful, if you intend to run a desktop operating system inside QEMU. The current refresh rate QEMU uses is quite low and the mouse interactivity is poor in comparison with vmware
+ vmware tools.
I am currently using the attached patch to improve the mouse interactivity - it shortens the screen refresh interval to 10 ms when the mouse or keyboard is active, and returns to 30 ms after a 100 ms inactivity period.
Regards,
Signature · 1 line
Jindrich Makovicka
qemu/sdl.c +21 -1
@@ -47,6 +47,8 @@static int guest_cursor =0 ;static int guest_x, guest_y;static SDL_Cursor *guest_sprite =0 ; +static int decimate_counter =0 ; +static int idle_counter =0 ;static void sdl_update (DisplayState *ds,int x,int y,int w,int h) {
@@ -347,17 +349,24 @@vga_hw_update (); } +#define SDL_IDLE_THRESHOLD 10 +#define SDL_DECIMATE 3 +static void sdl_refresh (DisplayState *ds) {SDL_Event ev1, *ev = &ev1;int mod_state; +int was_idle =1 ;if (last_vm_running != vm_running) { last_vm_running = vm_running;sdl_update_caption (); } -vga_hw_update (); +if (idle_counter <SDL_IDLE_THRESHOLD || decimate_counter ==0 ) +vga_hw_update (); + + decimate_counter = (decimate_counter +1 ) %SDL_DECIMATE ;while (SDL_PollEvent (ev)) {switch (ev->type) {
@@ -366,6 +375,7 @@break ;case SDL_KEYDOWN :case SDL_KEYUP : + was_idle =0 ;if (ev->type ==SDL_KEYDOWN ) {if (!alt_grab) { mod_state = (SDL_GetModState() & gui_grab_code) ==
@@ -476,6 +486,7 @@ }break ;case SDL_MOUSEMOTION : + was_idle =0 ;if (gui_grab ||kbd_mouse_is_absolute () || absolute_enabled) {sdl_send_mouse_event (0 );
@@ -483,6 +494,7 @@break ;case SDL_MOUSEBUTTONDOWN :case SDL_MOUSEBUTTONUP : + was_idle =0 ; {SDL_MouseButtonEvent *bev = &ev->button;if (!gui_grab && !kbd_mouse_is_absolute ()) {
@@ -515,6 +527,13 @@break ; } } + +if (was_idle) { +if (idle_counter <SDL_IDLE_THRESHOLD ) + idle_counter++; + }else { + idle_counter =0 ; + } }static void sdl_fill (DisplayState *ds,int x,int y,int w,int h,uint32_t c)
@@ -627,6 +646,7 @@ ds->dpy_fill = sdl_fill; ds->mouse_set = sdl_mouse_warp; ds->cursor_define = sdl_mouse_define; + ds->refresh_interval =10 ;sdl_resize (ds,640 ,400 );sdl_update_caption ();
qemu/vl.c +3 -2
@@ -142,7 +142,7 @@#define DEFAULT_RAM_SIZE 128#endif /* in ms */ -#define GUI_REFRESH_INTERVAL 30 +#define DEFAULT_GUI_REFRESH_INTERVAL 30/* Max number of USB devices that can be specified on the commandline. */ #define MAX_USB_CMDLINE 8
@@ -4918,6 +4918,7 @@ ds->dpy_update = dumb_update; ds->dpy_resize = dumb_resize; ds->dpy_refresh = dumb_refresh; + ds->refresh_interval =DEFAULT_GUI_REFRESH_INTERVAL ; }/***********************************************************/
@@ -6913,7 +6914,7 @@ {DisplayState *ds = opaque; ds->dpy_refresh (ds); -qemu_mod_timer (ds->gui_timer,GUI_REFRESH_INTERVAL +qemu_get_clock (rt_clock)); +qemu_mod_timer (ds->gui_timer, display_state.refresh_interval +qemu_get_clock (rt_clock)); }struct vm_change_state_entry {
qemu/vl.h +1 -0
@@ -970,6 +970,7 @@int height;void *opaque;QEMUTimer *gui_timer; +int refresh_interval;void (*dpy_update)(struct DisplayState *s,int x,int y,int w,int h);void (*dpy_resize)(struct DisplayState *s,int w,int h);
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
kvm-devel mailing list [email protected]
https://lists.sourceforge.net/lists/listinfo/kvm-devel
A message that is not in the archive (sent off-list or not yet received): [email protected]
A message that is not in the archive (sent off-list or not yet received): 20071015185341.09a732b2@holly
Quoted 18 lines · Jindrich Makovicka
Quoted 15 lines · On Mon, 15 Oct 2007 08:33:43 -0600 Cam Macdonell…
Quoted 14 lines · Jindrich Makovicka
On Sat, 13 Oct 2007 12:39:15 +0200
Even if it doesn't bring any performance benefits, I think that having a smoothly moving mouse cursor is useful, if you intend to run a desktop operating system inside QEMU. The current refresh rate QEMU uses is quite low and the mouse interactivity is poor in comparison with vmware
+ vmware tools.I am currently using the attached patch to improve the mouse interactivity - it shortens the screen refresh interval to 10 ms when the mouse or keyboard is active, and returns to 30 ms after a 100 ms inactivity period.
Quoted 7 lines
Quoted 4 lines
Hi Jindrich,
Thanks for posting this. Is there a particular guest that you find best demonstrates this?
IMO any guest that uses the mouse. I use KVM to run WindowsXP, where the effect is clearly visible, but it will be the same in XWindow.
Hi Jindrich,
Sorry for the delay in getting on this. I notice your patch stalls the system when -vnc is used. Do you have any idea why? I'll look into it, but I thought I should check with you first.
Thanks,
Cam
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/