Displaying 7 results from an estimated 7 matches for "vmentry_cycles".
2017 Jan 16
0
[PULL 2/5] tools/virtio/ringtest: tweaks for s390
...+)
diff --git a/tools/virtio/ringtest/main.h b/tools/virtio/ringtest/main.h
index 34e63cc4c572..14142faf040b 100644
--- a/tools/virtio/ringtest/main.h
+++ b/tools/virtio/ringtest/main.h
@@ -26,6 +26,16 @@ static inline void wait_cycles(unsigned long long cycles)
#define VMEXIT_CYCLES 500
#define VMENTRY_CYCLES 500
+#elif defined(__s390x__)
+static inline void wait_cycles(unsigned long long cycles)
+{
+ asm volatile("0: brctg %0,0b" : : "d" (cycles));
+}
+
+/* tweak me */
+#define VMEXIT_CYCLES 200
+#define VMENTRY_CYCLES 200
+
#else
static inline void wait_cycles(unsigned long lon...
2016 Jan 21
1
[PATCH] tools/virtio: add ringtest utilities
....h>
+
+extern bool do_exit;
+
+#if defined(__x86_64__) || defined(__i386__)
+#include "x86intrin.h"
+
+static inline void wait_cycles(unsigned long long cycles)
+{
+ unsigned long long t;
+
+ t = __rdtsc();
+ while (__rdtsc() - t < cycles) {}
+}
+
+#define VMEXIT_CYCLES 500
+#define VMENTRY_CYCLES 500
+
+#else
+static inline void wait_cycles(unsigned long long cycles)
+{
+ _Exit(5);
+}
+#define VMEXIT_CYCLES 0
+#define VMENTRY_CYCLES 0
+#endif
+
+static inline void vmexit(void)
+{
+ if (!do_exit)
+ return;
+
+ wait_cycles(VMEXIT_CYCLES);
+}
+static inline void vmentry(void)
+{
+ if (!do_ex...
2016 Jan 21
1
[PATCH] tools/virtio: add ringtest utilities
....h>
+
+extern bool do_exit;
+
+#if defined(__x86_64__) || defined(__i386__)
+#include "x86intrin.h"
+
+static inline void wait_cycles(unsigned long long cycles)
+{
+ unsigned long long t;
+
+ t = __rdtsc();
+ while (__rdtsc() - t < cycles) {}
+}
+
+#define VMEXIT_CYCLES 500
+#define VMENTRY_CYCLES 500
+
+#else
+static inline void wait_cycles(unsigned long long cycles)
+{
+ _Exit(5);
+}
+#define VMEXIT_CYCLES 0
+#define VMENTRY_CYCLES 0
+#endif
+
+static inline void vmexit(void)
+{
+ if (!do_exit)
+ return;
+
+ wait_cycles(VMEXIT_CYCLES);
+}
+static inline void vmentry(void)
+{
+ if (!do_ex...
2017 Jan 16
7
[PULL 0/5] virtio/s390 patches for -next
Michael,
the following patches have all been posted in the past. I've
collected them on top of your vhost branch -- please let me
know whether this works for you.
The following changes since commit 6bdf1e0efb04a1716373646cb6f35b73addca492:
Makefile: drop -D__CHECK_ENDIAN__ from cflags (2016-12-16 00:13:43 +0200)
are available in the git repository at:
2017 Jan 16
7
[PULL 0/5] virtio/s390 patches for -next
Michael,
the following patches have all been posted in the past. I've
collected them on top of your vhost branch -- please let me
know whether this works for you.
The following changes since commit 6bdf1e0efb04a1716373646cb6f35b73addca492:
Makefile: drop -D__CHECK_ENDIAN__ from cflags (2016-12-16 00:13:43 +0200)
are available in the git repository at:
2016 Jan 21
2
virtio ring layout changes for optimal single-stream performance
Hi all!
I have been experimenting with alternative virtio ring layouts,
in order to speed up single stream performance.
I have just posted a benchmark I wrote for the purpose, and a (partial)
alternative layout implementation. This achieves 20-40% reduction in
virtio overhead in the (default) polling mode.
http://article.gmane.org/gmane.linux.kernel.virtualization/26889
The layout is trying to
2016 Jan 21
2
virtio ring layout changes for optimal single-stream performance
Hi all!
I have been experimenting with alternative virtio ring layouts,
in order to speed up single stream performance.
I have just posted a benchmark I wrote for the purpose, and a (partial)
alternative layout implementation. This achieves 20-40% reduction in
virtio overhead in the (default) polling mode.
http://article.gmane.org/gmane.linux.kernel.virtualization/26889
The layout is trying to