summary refs log tree commit diff stats
path: root/results/classifier/zero-shot/105/instruction/1777786
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/zero-shot/105/instruction/1777786')
-rw-r--r--results/classifier/zero-shot/105/instruction/177778668
1 files changed, 68 insertions, 0 deletions
diff --git a/results/classifier/zero-shot/105/instruction/1777786 b/results/classifier/zero-shot/105/instruction/1777786
new file mode 100644
index 000000000..315a2e2f2
--- /dev/null
+++ b/results/classifier/zero-shot/105/instruction/1777786
@@ -0,0 +1,68 @@
+instruction: 0.595
+device: 0.477
+graphic: 0.474
+boot: 0.362
+other: 0.339
+semantic: 0.322
+KVM: 0.314
+mistranslation: 0.311
+network: 0.290
+assembly: 0.261
+vnc: 0.233
+socket: 0.231
+
+virtio-gpu-3d.c: change virtio_gpu_fence_poll timer scale
+
+We use virtio-gpu to accelerate Unigine Heaven Benchmark in VM. But we get only 5 FPS when we use AMD RX460 in our host.
+We found that guest os spent a lot of time in waiting for the return of glMapBufferRange/glUnmapBuffer commad. We suspected the host GPU was waiting for fence. So we finally change the timer of fence_poll. Afer change timer from
+ ms to us, Benchmark result raise up to 22 FPS.
+
+From a4003af5c4fe92d55353f42767d0c45de95bb78f Mon Sep 17 00:00:00 2001
+From: chen wei <email address hidden>
+Date: Fri, 8 Jun 2018 17:34:45 +0800
+Subject: [PATCH] virtio-gpu:improve 3d performance greatly
+
+  opengl function need fence support.when CPU execute opengl function, it need wait fence for synchronize GPU.
+so qemu must deal with fence timely as possible. but now the expire time of the timer to deal with fence is 10 ms.
+I think it is too long for opengl. So i will change it to 20 ns.
+  Before change, when i play Unigine_Heaven 3d game with virglrenderer, the fps is 3.  atfer change the fps up to 23.
+
+Signed-off-by: chen wei   <email address hidden>
+Signed-off-by: wang qiang <email address hidden>
+---
+ hw/display/virtio-gpu-3d.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/hw/display/virtio-gpu-3d.c b/hw/display/virtio-gpu-3d.c
+index 3558f38..c0a5d21 100644
+--- a/hw/display/virtio-gpu-3d.c
++++ b/hw/display/virtio-gpu-3d.c
+@@ -582,7 +582,7 @@ static void virtio_gpu_fence_poll(void *opaque)
+     virgl_renderer_poll();
+     virtio_gpu_process_cmdq(g);
+     if (!QTAILQ_EMPTY(&g->cmdq) || !QTAILQ_EMPTY(&g->fenceq)) {
+-        timer_mod(g->fence_poll, qemu_clock_get_ms(QEMU_CLOCK_VIRTUAL) + 10);
++        timer_mod(g->fence_poll, qemu_clock_get_us(QEMU_CLOCK_VIRTUAL) + 20);
+     }
+ }
+ 
+@@ -629,7 +629,7 @@ int virtio_gpu_virgl_init(VirtIOGPU *g)
+         return ret;
+     }
+ 
+-    g->fence_poll = timer_new_ms(QEMU_CLOCK_VIRTUAL,
++    g->fence_poll = timer_new_us(QEMU_CLOCK_VIRTUAL,
+                                  virtio_gpu_fence_poll, g);
+ 
+     if (virtio_gpu_stats_enabled(g->conf)) {
+-- 
+2.7.4
+
+
+
+Please don't use the bug tracker for providing patches, and send it to the mailing list instead, see: https://wiki.qemu.org/Contribute/SubmitAPatch
+
+Did you ever send your patch to the mailing list for discussion?
+
+[Expired for QEMU because there has been no activity for 60 days.]
+