* [PATCH i-g-t 1/2] i915/gem_exec_latency: Normalize results into ns
@ 2019-01-29 9:55 ` Chris Wilson
0 siblings, 0 replies; 14+ messages in thread
From: Chris Wilson @ 2019-01-29 9:55 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
Present the latency results in nanoseconds not RCS cycles.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
tests/i915/gem_exec_latency.c | 38 +++++++++++++++++++++++++++++++----
1 file changed, 34 insertions(+), 4 deletions(-)
diff --git a/tests/i915/gem_exec_latency.c b/tests/i915/gem_exec_latency.c
index de16322a6..ea44adc14 100644
--- a/tests/i915/gem_exec_latency.c
+++ b/tests/i915/gem_exec_latency.c
@@ -59,6 +59,7 @@
#define PREEMPT 0x2
static unsigned int ring_size;
+static double rcs_clock;
static void
poll_ring(int fd, unsigned ring, const char *name)
@@ -207,7 +208,7 @@ static void latency_on_ring(int fd,
igt_cork_unplug(&c);
gem_set_domain(fd, obj[1].handle, I915_GEM_DOMAIN_GTT, 0);
- gpu_latency = (results[repeats-1] - results[0]) / (double)(repeats-1);
+ gpu_latency = (results[repeats-1] - results[1]) / (double)(repeats-2);
gem_set_domain(fd, obj[2].handle,
I915_GEM_DOMAIN_GTT, I915_GEM_DOMAIN_GTT);
@@ -238,10 +239,11 @@ static void latency_on_ring(int fd,
igt_assert(offset == obj[2].offset);
gem_set_domain(fd, obj[1].handle, I915_GEM_DOMAIN_GTT, 0);
- igt_info("%s: dispatch latency: %.2f, execution latency: %.2f (target %.2f)\n",
+ igt_info("%s: dispatch latency: %.1fns, execution latency: %.1fns (target %.1fns)\n",
name,
- (end - start) / (double)repeats,
- gpu_latency, (results[repeats - 1] - results[0]) / (double)(repeats - 1));
+ (end - start) / (double)repeats * rcs_clock,
+ gpu_latency * rcs_clock,
+ (results[repeats - 1] - results[0]) / (double)(repeats - 1) * rcs_clock);
munmap(map, 64*1024);
munmap(results, 4096);
@@ -620,6 +622,30 @@ rthog_latency_on_ring(int fd, unsigned int engine, const char *name, unsigned in
munmap(results, MMAP_SZ);
}
+static double clockrate(void)
+{
+ volatile uint32_t *reg;
+ uint32_t r_start, r_end;
+ struct timespec tv;
+ uint64_t t_start, t_end;
+ uint64_t elapsed;
+
+ reg = (volatile uint32_t *)((volatile char *)igt_global_mmio + RCS_TIMESTAMP);
+
+ t_start = igt_nsec_elapsed(&tv);
+ r_start = *reg;
+ elapsed = igt_nsec_elapsed(&tv) - t_start;
+
+ usleep(1000);
+
+ t_end = igt_nsec_elapsed(&tv);
+ r_end = *reg;
+ elapsed += igt_nsec_elapsed(&tv) - t_end;
+
+ elapsed = (t_end - t_start) + elapsed / 2;
+ return (r_end - r_start) * 1e9 / elapsed;
+}
+
igt_main
{
const struct intel_execution_engine *e;
@@ -640,6 +666,10 @@ igt_main
ring_size = 1024;
intel_register_access_init(intel_get_pci_device(), false, device);
+ rcs_clock = clockrate();
+ igt_info("RCS timestamp clock: %.3fKHz, %.1fns\n",
+ rcs_clock / 1e3, 1e9 / rcs_clock);
+ rcs_clock = 1e9 / rcs_clock;
}
igt_subtest("all-rtidle-submit")
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [igt-dev] [PATCH i-g-t 1/2] i915/gem_exec_latency: Normalize results into ns
@ 2019-01-29 9:55 ` Chris Wilson
0 siblings, 0 replies; 14+ messages in thread
From: Chris Wilson @ 2019-01-29 9:55 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
Present the latency results in nanoseconds not RCS cycles.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
tests/i915/gem_exec_latency.c | 38 +++++++++++++++++++++++++++++++----
1 file changed, 34 insertions(+), 4 deletions(-)
diff --git a/tests/i915/gem_exec_latency.c b/tests/i915/gem_exec_latency.c
index de16322a6..ea44adc14 100644
--- a/tests/i915/gem_exec_latency.c
+++ b/tests/i915/gem_exec_latency.c
@@ -59,6 +59,7 @@
#define PREEMPT 0x2
static unsigned int ring_size;
+static double rcs_clock;
static void
poll_ring(int fd, unsigned ring, const char *name)
@@ -207,7 +208,7 @@ static void latency_on_ring(int fd,
igt_cork_unplug(&c);
gem_set_domain(fd, obj[1].handle, I915_GEM_DOMAIN_GTT, 0);
- gpu_latency = (results[repeats-1] - results[0]) / (double)(repeats-1);
+ gpu_latency = (results[repeats-1] - results[1]) / (double)(repeats-2);
gem_set_domain(fd, obj[2].handle,
I915_GEM_DOMAIN_GTT, I915_GEM_DOMAIN_GTT);
@@ -238,10 +239,11 @@ static void latency_on_ring(int fd,
igt_assert(offset == obj[2].offset);
gem_set_domain(fd, obj[1].handle, I915_GEM_DOMAIN_GTT, 0);
- igt_info("%s: dispatch latency: %.2f, execution latency: %.2f (target %.2f)\n",
+ igt_info("%s: dispatch latency: %.1fns, execution latency: %.1fns (target %.1fns)\n",
name,
- (end - start) / (double)repeats,
- gpu_latency, (results[repeats - 1] - results[0]) / (double)(repeats - 1));
+ (end - start) / (double)repeats * rcs_clock,
+ gpu_latency * rcs_clock,
+ (results[repeats - 1] - results[0]) / (double)(repeats - 1) * rcs_clock);
munmap(map, 64*1024);
munmap(results, 4096);
@@ -620,6 +622,30 @@ rthog_latency_on_ring(int fd, unsigned int engine, const char *name, unsigned in
munmap(results, MMAP_SZ);
}
+static double clockrate(void)
+{
+ volatile uint32_t *reg;
+ uint32_t r_start, r_end;
+ struct timespec tv;
+ uint64_t t_start, t_end;
+ uint64_t elapsed;
+
+ reg = (volatile uint32_t *)((volatile char *)igt_global_mmio + RCS_TIMESTAMP);
+
+ t_start = igt_nsec_elapsed(&tv);
+ r_start = *reg;
+ elapsed = igt_nsec_elapsed(&tv) - t_start;
+
+ usleep(1000);
+
+ t_end = igt_nsec_elapsed(&tv);
+ r_end = *reg;
+ elapsed += igt_nsec_elapsed(&tv) - t_end;
+
+ elapsed = (t_end - t_start) + elapsed / 2;
+ return (r_end - r_start) * 1e9 / elapsed;
+}
+
igt_main
{
const struct intel_execution_engine *e;
@@ -640,6 +666,10 @@ igt_main
ring_size = 1024;
intel_register_access_init(intel_get_pci_device(), false, device);
+ rcs_clock = clockrate();
+ igt_info("RCS timestamp clock: %.3fKHz, %.1fns\n",
+ rcs_clock / 1e3, 1e9 / rcs_clock);
+ rcs_clock = 1e9 / rcs_clock;
}
igt_subtest("all-rtidle-submit")
--
2.20.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH i-g-t 2/2] i915/gem_exec_latency: Eliminate the wakeup penalty
2019-01-29 9:55 ` [igt-dev] " Chris Wilson
@ 2019-01-29 9:55 ` Chris Wilson
-1 siblings, 0 replies; 14+ messages in thread
From: Chris Wilson @ 2019-01-29 9:55 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
The first dispatch incurs the cost of waking up the device, so also
measure after issuing a spinner to keep the device awake as we submit.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
tests/i915/gem_exec_latency.c | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/tests/i915/gem_exec_latency.c b/tests/i915/gem_exec_latency.c
index ea44adc14..234e27f1e 100644
--- a/tests/i915/gem_exec_latency.c
+++ b/tests/i915/gem_exec_latency.c
@@ -55,8 +55,9 @@
#define ENGINE_FLAGS (I915_EXEC_RING_MASK | LOCAL_I915_EXEC_BSD_MASK)
-#define CORK 0x1
-#define PREEMPT 0x2
+#define LIVE 0x1
+#define CORK 0x2
+#define PREEMPT 0x4
static unsigned int ring_size;
static double rcs_clock;
@@ -120,6 +121,7 @@ static void latency_on_ring(int fd,
struct drm_i915_gem_exec_object2 obj[3];
struct drm_i915_gem_relocation_entry reloc;
struct drm_i915_gem_execbuffer2 execbuf;
+ igt_spin_t *spin = NULL;
IGT_CORK_HANDLE(c);
volatile uint32_t *reg;
unsigned repeats = ring_size;
@@ -189,6 +191,9 @@ static void latency_on_ring(int fd,
execbuf.buffer_count = 3;
}
+ if (flags & LIVE)
+ spin = igt_spin_batch_new(fd, .engine = ring);
+
start = *reg;
for (j = 0; j < repeats; j++) {
uint64_t presumed_offset = reloc.presumed_offset;
@@ -204,6 +209,7 @@ static void latency_on_ring(int fd,
end = *reg;
igt_assert(reloc.presumed_offset == obj[1].offset);
+ igt_spin_batch_free(fd, spin);
if (flags & CORK)
igt_cork_unplug(&c);
@@ -696,6 +702,11 @@ igt_main
e->exec_id | e->flags,
e->name, 0);
+ igt_subtest_f("%s-live-dispatch", e->name)
+ latency_on_ring(device,
+ e->exec_id | e->flags,
+ e->name, LIVE);
+
igt_subtest_f("%s-poll", e->name)
poll_ring(device,
e->exec_id | e->flags,
@@ -715,6 +726,10 @@ igt_main
e->name,
0);
+ igt_subtest_f("%s-live-dispatch-queued", e->name)
+ latency_on_ring(device,
+ e->exec_id | e->flags,
+ e->name, LIVE | CORK);
igt_subtest_f("%s-dispatch-queued", e->name)
latency_on_ring(device,
e->exec_id | e->flags,
--
2.20.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [igt-dev] [PATCH i-g-t 2/2] i915/gem_exec_latency: Eliminate the wakeup penalty
@ 2019-01-29 9:55 ` Chris Wilson
0 siblings, 0 replies; 14+ messages in thread
From: Chris Wilson @ 2019-01-29 9:55 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
The first dispatch incurs the cost of waking up the device, so also
measure after issuing a spinner to keep the device awake as we submit.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
tests/i915/gem_exec_latency.c | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/tests/i915/gem_exec_latency.c b/tests/i915/gem_exec_latency.c
index ea44adc14..234e27f1e 100644
--- a/tests/i915/gem_exec_latency.c
+++ b/tests/i915/gem_exec_latency.c
@@ -55,8 +55,9 @@
#define ENGINE_FLAGS (I915_EXEC_RING_MASK | LOCAL_I915_EXEC_BSD_MASK)
-#define CORK 0x1
-#define PREEMPT 0x2
+#define LIVE 0x1
+#define CORK 0x2
+#define PREEMPT 0x4
static unsigned int ring_size;
static double rcs_clock;
@@ -120,6 +121,7 @@ static void latency_on_ring(int fd,
struct drm_i915_gem_exec_object2 obj[3];
struct drm_i915_gem_relocation_entry reloc;
struct drm_i915_gem_execbuffer2 execbuf;
+ igt_spin_t *spin = NULL;
IGT_CORK_HANDLE(c);
volatile uint32_t *reg;
unsigned repeats = ring_size;
@@ -189,6 +191,9 @@ static void latency_on_ring(int fd,
execbuf.buffer_count = 3;
}
+ if (flags & LIVE)
+ spin = igt_spin_batch_new(fd, .engine = ring);
+
start = *reg;
for (j = 0; j < repeats; j++) {
uint64_t presumed_offset = reloc.presumed_offset;
@@ -204,6 +209,7 @@ static void latency_on_ring(int fd,
end = *reg;
igt_assert(reloc.presumed_offset == obj[1].offset);
+ igt_spin_batch_free(fd, spin);
if (flags & CORK)
igt_cork_unplug(&c);
@@ -696,6 +702,11 @@ igt_main
e->exec_id | e->flags,
e->name, 0);
+ igt_subtest_f("%s-live-dispatch", e->name)
+ latency_on_ring(device,
+ e->exec_id | e->flags,
+ e->name, LIVE);
+
igt_subtest_f("%s-poll", e->name)
poll_ring(device,
e->exec_id | e->flags,
@@ -715,6 +726,10 @@ igt_main
e->name,
0);
+ igt_subtest_f("%s-live-dispatch-queued", e->name)
+ latency_on_ring(device,
+ e->exec_id | e->flags,
+ e->name, LIVE | CORK);
igt_subtest_f("%s-dispatch-queued", e->name)
latency_on_ring(device,
e->exec_id | e->flags,
--
2.20.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] i915/gem_exec_latency: Normalize results into ns
2019-01-29 9:55 ` [igt-dev] " Chris Wilson
(?)
(?)
@ 2019-01-29 11:12 ` Patchwork
-1 siblings, 0 replies; 14+ messages in thread
From: Patchwork @ 2019-01-29 11:12 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/2] i915/gem_exec_latency: Normalize results into ns
URL : https://patchwork.freedesktop.org/series/55890/
State : success
== Summary ==
CI Bug Log - changes from IGT_4798 -> IGTPW_2313
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/55890/revisions/1/mbox/
Known issues
------------
Here are the changes found in IGTPW_2313 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@amdgpu/amd_basic@userptr:
- fi-kbl-8809g: PASS -> DMESG-WARN [fdo#108965]
* igt@i915_selftest@live_execlists:
- fi-apl-guc: PASS -> INCOMPLETE [fdo#103927] / [fdo#108622]
* igt@kms_busy@basic-flip-a:
- fi-gdg-551: PASS -> FAIL [fdo#103182]
* igt@kms_chamelium@common-hpd-after-suspend:
- fi-kbl-7567u: PASS -> WARN [fdo#109380]
* igt@kms_pipe_crc_basic@read-crc-pipe-b:
- fi-byt-clapper: PASS -> FAIL [fdo#107362]
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
- fi-byt-clapper: PASS -> FAIL [fdo#103191] / [fdo#107362]
#### Possible fixes ####
* igt@kms_pipe_crc_basic@nonblocking-crc-pipe-b-frame-sequence:
- fi-byt-clapper: FAIL [fdo#103191] / [fdo#107362] -> PASS
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103182]: https://bugs.freedesktop.org/show_bug.cgi?id=103182
[fdo#103191]: https://bugs.freedesktop.org/show_bug.cgi?id=103191
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#107362]: https://bugs.freedesktop.org/show_bug.cgi?id=107362
[fdo#108622]: https://bugs.freedesktop.org/show_bug.cgi?id=108622
[fdo#108965]: https://bugs.freedesktop.org/show_bug.cgi?id=108965
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109380]: https://bugs.freedesktop.org/show_bug.cgi?id=109380
Participating hosts (45 -> 41)
------------------------------
Additional (1): fi-pnv-d510
Missing (5): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-ctg-p8600
Build changes
-------------
* IGT: IGT_4798 -> IGTPW_2313
CI_DRM_5499: 3c874f04ad225c2cdf9552c5e70182006696f258 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2313: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2313/
IGT_4798: 998e0a4aedf10fb5f7c271018cd80d874668bf55 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Testlist changes ==
+igt@gem_exec_latency@blt-live-dispatch
+igt@gem_exec_latency@blt-live-dispatch-queued
+igt@gem_exec_latency@bsd1-live-dispatch
+igt@gem_exec_latency@bsd1-live-dispatch-queued
+igt@gem_exec_latency@bsd2-live-dispatch
+igt@gem_exec_latency@bsd2-live-dispatch-queued
+igt@gem_exec_latency@bsd-live-dispatch
+igt@gem_exec_latency@bsd-live-dispatch-queued
+igt@gem_exec_latency@render-live-dispatch
+igt@gem_exec_latency@render-live-dispatch-queued
+igt@gem_exec_latency@vebox-live-dispatch
+igt@gem_exec_latency@vebox-live-dispatch-queued
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2313/
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 14+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for series starting with [i-g-t,1/2] i915/gem_exec_latency: Normalize results into ns
2019-01-29 9:55 ` [igt-dev] " Chris Wilson
` (2 preceding siblings ...)
(?)
@ 2019-01-29 13:29 ` Patchwork
-1 siblings, 0 replies; 14+ messages in thread
From: Patchwork @ 2019-01-29 13:29 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/2] i915/gem_exec_latency: Normalize results into ns
URL : https://patchwork.freedesktop.org/series/55890/
State : success
== Summary ==
CI Bug Log - changes from IGT_4798_full -> IGTPW_2313_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/55890/revisions/1/mbox/
Known issues
------------
Here are the changes found in IGTPW_2313_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_hangman@error-state-capture-render:
- shard-apl: PASS -> INCOMPLETE [fdo#103927]
* igt@kms_busy@basic-modeset-b:
- shard-snb: NOTRUN -> FAIL [fdo#109490]
* igt@kms_busy@extended-modeset-hang-newfb-render-a:
- shard-hsw: NOTRUN -> DMESG-WARN [fdo#107956]
* igt@kms_busy@extended-modeset-hang-newfb-render-c:
- shard-glk: NOTRUN -> DMESG-WARN [fdo#107956] +2
* igt@kms_busy@extended-pageflip-modeset-hang-oldfb-render-a:
- shard-kbl: PASS -> DMESG-WARN [fdo#107956] +1
* igt@kms_color@pipe-c-degamma:
- shard-kbl: PASS -> FAIL [fdo#104782]
- shard-apl: PASS -> FAIL [fdo#104782]
* igt@kms_cursor_crc@cursor-128x128-dpms:
- shard-kbl: PASS -> FAIL [fdo#103232] +1
* igt@kms_cursor_crc@cursor-128x42-onscreen:
- shard-apl: PASS -> FAIL [fdo#103232] +1
* igt@kms_cursor_crc@cursor-64x21-onscreen:
- shard-kbl: PASS -> DMESG-WARN [fdo#105345]
* igt@kms_cursor_crc@cursor-64x64-sliding:
- shard-glk: PASS -> FAIL [fdo#103232] +2
* igt@kms_cursor_crc@cursor-64x64-suspend:
- shard-apl: PASS -> FAIL [fdo#103191] / [fdo#103232]
- shard-kbl: PASS -> FAIL [fdo#103191] / [fdo#103232]
* igt@kms_cursor_legacy@2x-long-nonblocking-modeset-vs-cursor-atomic:
- shard-glk: NOTRUN -> FAIL [fdo#105454] / [fdo#106509]
* igt@kms_plane@pixel-format-pipe-a-planes-source-clamping:
- shard-glk: NOTRUN -> FAIL [fdo#108948]
* igt@kms_plane_alpha_blend@pipe-b-alpha-opaque-fb:
- shard-glk: NOTRUN -> FAIL [fdo#108145]
* igt@kms_plane_alpha_blend@pipe-c-constant-alpha-max:
- shard-glk: PASS -> FAIL [fdo#108145] +1
* igt@kms_plane_multiple@atomic-pipe-a-tiling-x:
- shard-apl: PASS -> FAIL [fdo#103166] +1
* igt@kms_plane_multiple@atomic-pipe-b-tiling-y:
- shard-glk: PASS -> FAIL [fdo#103166] +8
#### Possible fixes ####
* igt@kms_atomic_transition@plane-all-transition:
- shard-hsw: INCOMPLETE [fdo#103540] / [fdo#109225] -> PASS
* igt@kms_available_modes_crc@available_mode_test_crc:
- shard-apl: FAIL [fdo#106641] -> PASS
- shard-kbl: FAIL [fdo#106641] -> PASS
* igt@kms_color@pipe-a-legacy-gamma:
- shard-apl: FAIL [fdo#104782] / [fdo#108145] -> PASS
* igt@kms_cursor_crc@cursor-128x42-sliding:
- shard-kbl: FAIL [fdo#103232] -> PASS +3
* igt@kms_cursor_crc@cursor-256x256-random:
- shard-glk: FAIL [fdo#103232] -> PASS +5
* igt@kms_cursor_crc@cursor-256x85-random:
- shard-apl: FAIL [fdo#103232] -> PASS +7
* igt@kms_plane@plane-position-covered-pipe-c-planes:
- shard-apl: FAIL [fdo#103166] -> PASS +2
* igt@kms_plane_alpha_blend@pipe-a-constant-alpha-max:
- shard-glk: FAIL [fdo#108145] -> PASS
* igt@kms_plane_alpha_blend@pipe-c-alpha-opaque-fb:
- shard-apl: FAIL [fdo#108145] -> PASS
* igt@kms_plane_multiple@atomic-pipe-c-tiling-x:
- shard-glk: FAIL [fdo#103166] -> PASS
* igt@kms_setmode@basic:
- shard-apl: FAIL [fdo#99912] -> PASS
* igt@perf@short-reads:
- shard-kbl: FAIL [fdo#103183] -> PASS
* igt@perf_pmu@rc6-runtime-pm-long:
- shard-glk: FAIL [fdo#105010] -> PASS
* igt@pm_rc6_residency@rc6-accuracy:
- shard-snb: {SKIP} [fdo#109271] -> PASS
* igt@prime_busy@hang-bsd:
- shard-hsw: FAIL [fdo#108807] -> PASS
* igt@sw_sync@sync_busy_fork_unixsocket:
- shard-glk: INCOMPLETE [fdo#103359] / [k.org#198133] -> PASS
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103166]: https://bugs.freedesktop.org/show_bug.cgi?id=103166
[fdo#103183]: https://bugs.freedesktop.org/show_bug.cgi?id=103183
[fdo#103191]: https://bugs.freedesktop.org/show_bug.cgi?id=103191
[fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232
[fdo#103359]: https://bugs.freedesktop.org/show_bug.cgi?id=103359
[fdo#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#104782]: https://bugs.freedesktop.org/show_bug.cgi?id=104782
[fdo#105010]: https://bugs.freedesktop.org/show_bug.cgi?id=105010
[fdo#105345]: https://bugs.freedesktop.org/show_bug.cgi?id=105345
[fdo#105411]: https://bugs.freedesktop.org/show_bug.cgi?id=105411
[fdo#105454]: https://bugs.freedesktop.org/show_bug.cgi?id=105454
[fdo#106509]: https://bugs.freedesktop.org/show_bug.cgi?id=106509
[fdo#106641]: https://bugs.freedesktop.org/show_bug.cgi?id=106641
[fdo#107956]: https://bugs.freedesktop.org/show_bug.cgi?id=107956
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#108807]: https://bugs.freedesktop.org/show_bug.cgi?id=108807
[fdo#108948]: https://bugs.freedesktop.org/show_bug.cgi?id=108948
[fdo#109225]: https://bugs.freedesktop.org/show_bug.cgi?id=109225
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109490]: https://bugs.freedesktop.org/show_bug.cgi?id=109490
[fdo#99912]: https://bugs.freedesktop.org/show_bug.cgi?id=99912
[k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133
Participating hosts (6 -> 5)
------------------------------
Missing (1): shard-skl
Build changes
-------------
* IGT: IGT_4798 -> IGTPW_2313
CI_DRM_5499: 3c874f04ad225c2cdf9552c5e70182006696f258 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2313: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2313/
IGT_4798: 998e0a4aedf10fb5f7c271018cd80d874668bf55 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2313/
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] i915/gem_exec_latency: Normalize results into ns
2019-01-29 9:55 ` [igt-dev] " Chris Wilson
@ 2019-01-29 17:55 ` Antonio Argenziano
-1 siblings, 0 replies; 14+ messages in thread
From: Antonio Argenziano @ 2019-01-29 17:55 UTC (permalink / raw)
To: Chris Wilson, intel-gfx; +Cc: igt-dev
On 29/01/19 01:55, Chris Wilson wrote:
> Present the latency results in nanoseconds not RCS cycles.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> ---
> tests/i915/gem_exec_latency.c | 38 +++++++++++++++++++++++++++++++----
> 1 file changed, 34 insertions(+), 4 deletions(-)
>
> diff --git a/tests/i915/gem_exec_latency.c b/tests/i915/gem_exec_latency.c
> index de16322a6..ea44adc14 100644
> --- a/tests/i915/gem_exec_latency.c
> +++ b/tests/i915/gem_exec_latency.c
> @@ -59,6 +59,7 @@
> #define PREEMPT 0x2
>
> static unsigned int ring_size;
> +static double rcs_clock;
>
> static void
> poll_ring(int fd, unsigned ring, const char *name)
> @@ -207,7 +208,7 @@ static void latency_on_ring(int fd,
> igt_cork_unplug(&c);
>
> gem_set_domain(fd, obj[1].handle, I915_GEM_DOMAIN_GTT, 0);
> - gpu_latency = (results[repeats-1] - results[0]) / (double)(repeats-1);
> + gpu_latency = (results[repeats-1] - results[1]) / (double)(repeats-2);
How come you don't like the value at 0? Maybe adding a comment would
make it clearer.
>
> gem_set_domain(fd, obj[2].handle,
> I915_GEM_DOMAIN_GTT, I915_GEM_DOMAIN_GTT);
> @@ -238,10 +239,11 @@ static void latency_on_ring(int fd,
> igt_assert(offset == obj[2].offset);
>
> gem_set_domain(fd, obj[1].handle, I915_GEM_DOMAIN_GTT, 0);
> - igt_info("%s: dispatch latency: %.2f, execution latency: %.2f (target %.2f)\n",
> + igt_info("%s: dispatch latency: %.1fns, execution latency: %.1fns (target %.1fns)\n",
> name,
> - (end - start) / (double)repeats,
> - gpu_latency, (results[repeats - 1] - results[0]) / (double)(repeats - 1));
> + (end - start) / (double)repeats * rcs_clock,
> + gpu_latency * rcs_clock,
> + (results[repeats - 1] - results[0]) / (double)(repeats - 1) * rcs_clock);
>
> munmap(map, 64*1024);
> munmap(results, 4096);
> @@ -620,6 +622,30 @@ rthog_latency_on_ring(int fd, unsigned int engine, const char *name, unsigned in
> munmap(results, MMAP_SZ);
> }
>
> +static double clockrate(void)
> +{
> + volatile uint32_t *reg;
> + uint32_t r_start, r_end;
> + struct timespec tv;
> + uint64_t t_start, t_end;
> + uint64_t elapsed;
> +
> + reg = (volatile uint32_t *)((volatile char *)igt_global_mmio + RCS_TIMESTAMP);
> +
> + t_start = igt_nsec_elapsed(&tv);
> + r_start = *reg;
> + elapsed = igt_nsec_elapsed(&tv) - t_start;
> +
> + usleep(1000);
> +
> + t_end = igt_nsec_elapsed(&tv);
> + r_end = *reg;
> + elapsed += igt_nsec_elapsed(&tv) - t_end;
> +
> + elapsed = (t_end - t_start) + elapsed / 2;
> + return (r_end - r_start) * 1e9 / elapsed;
> +}
> +
> igt_main
> {
> const struct intel_execution_engine *e;
> @@ -640,6 +666,10 @@ igt_main
> ring_size = 1024;
>
> intel_register_access_init(intel_get_pci_device(), false, device);
> + rcs_clock = clockrate();
> + igt_info("RCS timestamp clock: %.3fKHz, %.1fns\n",
> + rcs_clock / 1e3, 1e9 / rcs_clock);
> + rcs_clock = 1e9 / rcs_clock;
> }
>
> igt_subtest("all-rtidle-submit")
>
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] i915/gem_exec_latency: Normalize results into ns
@ 2019-01-29 17:55 ` Antonio Argenziano
0 siblings, 0 replies; 14+ messages in thread
From: Antonio Argenziano @ 2019-01-29 17:55 UTC (permalink / raw)
To: Chris Wilson, intel-gfx; +Cc: igt-dev
On 29/01/19 01:55, Chris Wilson wrote:
> Present the latency results in nanoseconds not RCS cycles.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> ---
> tests/i915/gem_exec_latency.c | 38 +++++++++++++++++++++++++++++++----
> 1 file changed, 34 insertions(+), 4 deletions(-)
>
> diff --git a/tests/i915/gem_exec_latency.c b/tests/i915/gem_exec_latency.c
> index de16322a6..ea44adc14 100644
> --- a/tests/i915/gem_exec_latency.c
> +++ b/tests/i915/gem_exec_latency.c
> @@ -59,6 +59,7 @@
> #define PREEMPT 0x2
>
> static unsigned int ring_size;
> +static double rcs_clock;
>
> static void
> poll_ring(int fd, unsigned ring, const char *name)
> @@ -207,7 +208,7 @@ static void latency_on_ring(int fd,
> igt_cork_unplug(&c);
>
> gem_set_domain(fd, obj[1].handle, I915_GEM_DOMAIN_GTT, 0);
> - gpu_latency = (results[repeats-1] - results[0]) / (double)(repeats-1);
> + gpu_latency = (results[repeats-1] - results[1]) / (double)(repeats-2);
How come you don't like the value at 0? Maybe adding a comment would
make it clearer.
>
> gem_set_domain(fd, obj[2].handle,
> I915_GEM_DOMAIN_GTT, I915_GEM_DOMAIN_GTT);
> @@ -238,10 +239,11 @@ static void latency_on_ring(int fd,
> igt_assert(offset == obj[2].offset);
>
> gem_set_domain(fd, obj[1].handle, I915_GEM_DOMAIN_GTT, 0);
> - igt_info("%s: dispatch latency: %.2f, execution latency: %.2f (target %.2f)\n",
> + igt_info("%s: dispatch latency: %.1fns, execution latency: %.1fns (target %.1fns)\n",
> name,
> - (end - start) / (double)repeats,
> - gpu_latency, (results[repeats - 1] - results[0]) / (double)(repeats - 1));
> + (end - start) / (double)repeats * rcs_clock,
> + gpu_latency * rcs_clock,
> + (results[repeats - 1] - results[0]) / (double)(repeats - 1) * rcs_clock);
>
> munmap(map, 64*1024);
> munmap(results, 4096);
> @@ -620,6 +622,30 @@ rthog_latency_on_ring(int fd, unsigned int engine, const char *name, unsigned in
> munmap(results, MMAP_SZ);
> }
>
> +static double clockrate(void)
> +{
> + volatile uint32_t *reg;
> + uint32_t r_start, r_end;
> + struct timespec tv;
> + uint64_t t_start, t_end;
> + uint64_t elapsed;
> +
> + reg = (volatile uint32_t *)((volatile char *)igt_global_mmio + RCS_TIMESTAMP);
> +
> + t_start = igt_nsec_elapsed(&tv);
> + r_start = *reg;
> + elapsed = igt_nsec_elapsed(&tv) - t_start;
> +
> + usleep(1000);
> +
> + t_end = igt_nsec_elapsed(&tv);
> + r_end = *reg;
> + elapsed += igt_nsec_elapsed(&tv) - t_end;
> +
> + elapsed = (t_end - t_start) + elapsed / 2;
> + return (r_end - r_start) * 1e9 / elapsed;
> +}
> +
> igt_main
> {
> const struct intel_execution_engine *e;
> @@ -640,6 +666,10 @@ igt_main
> ring_size = 1024;
>
> intel_register_access_init(intel_get_pci_device(), false, device);
> + rcs_clock = clockrate();
> + igt_info("RCS timestamp clock: %.3fKHz, %.1fns\n",
> + rcs_clock / 1e3, 1e9 / rcs_clock);
> + rcs_clock = 1e9 / rcs_clock;
> }
>
> igt_subtest("all-rtidle-submit")
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] i915/gem_exec_latency: Normalize results into ns
2019-01-29 17:55 ` Antonio Argenziano
@ 2019-01-29 18:01 ` Chris Wilson
-1 siblings, 0 replies; 14+ messages in thread
From: Chris Wilson @ 2019-01-29 18:01 UTC (permalink / raw)
To: Antonio Argenziano, intel-gfx; +Cc: igt-dev
Quoting Antonio Argenziano (2019-01-29 17:55:45)
>
>
> On 29/01/19 01:55, Chris Wilson wrote:
> > Present the latency results in nanoseconds not RCS cycles.
> >
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > ---
> > tests/i915/gem_exec_latency.c | 38 +++++++++++++++++++++++++++++++----
> > 1 file changed, 34 insertions(+), 4 deletions(-)
> >
> > diff --git a/tests/i915/gem_exec_latency.c b/tests/i915/gem_exec_latency.c
> > index de16322a6..ea44adc14 100644
> > --- a/tests/i915/gem_exec_latency.c
> > +++ b/tests/i915/gem_exec_latency.c
> > @@ -59,6 +59,7 @@
> > #define PREEMPT 0x2
> >
> > static unsigned int ring_size;
> > +static double rcs_clock;
> >
> > static void
> > poll_ring(int fd, unsigned ring, const char *name)
> > @@ -207,7 +208,7 @@ static void latency_on_ring(int fd,
> > igt_cork_unplug(&c);
> >
> > gem_set_domain(fd, obj[1].handle, I915_GEM_DOMAIN_GTT, 0);
> > - gpu_latency = (results[repeats-1] - results[0]) / (double)(repeats-1);
> > + gpu_latency = (results[repeats-1] - results[1]) / (double)(repeats-2);
>
> How come you don't like the value at 0? Maybe adding a comment would
> make it clearer.
I was thinking of trying to reduce some context warmup latency, but
it doesn't matter and the spinner in the second patch is much more
effective overall.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] i915/gem_exec_latency: Normalize results into ns
@ 2019-01-29 18:01 ` Chris Wilson
0 siblings, 0 replies; 14+ messages in thread
From: Chris Wilson @ 2019-01-29 18:01 UTC (permalink / raw)
To: Antonio Argenziano, intel-gfx; +Cc: igt-dev
Quoting Antonio Argenziano (2019-01-29 17:55:45)
>
>
> On 29/01/19 01:55, Chris Wilson wrote:
> > Present the latency results in nanoseconds not RCS cycles.
> >
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > ---
> > tests/i915/gem_exec_latency.c | 38 +++++++++++++++++++++++++++++++----
> > 1 file changed, 34 insertions(+), 4 deletions(-)
> >
> > diff --git a/tests/i915/gem_exec_latency.c b/tests/i915/gem_exec_latency.c
> > index de16322a6..ea44adc14 100644
> > --- a/tests/i915/gem_exec_latency.c
> > +++ b/tests/i915/gem_exec_latency.c
> > @@ -59,6 +59,7 @@
> > #define PREEMPT 0x2
> >
> > static unsigned int ring_size;
> > +static double rcs_clock;
> >
> > static void
> > poll_ring(int fd, unsigned ring, const char *name)
> > @@ -207,7 +208,7 @@ static void latency_on_ring(int fd,
> > igt_cork_unplug(&c);
> >
> > gem_set_domain(fd, obj[1].handle, I915_GEM_DOMAIN_GTT, 0);
> > - gpu_latency = (results[repeats-1] - results[0]) / (double)(repeats-1);
> > + gpu_latency = (results[repeats-1] - results[1]) / (double)(repeats-2);
>
> How come you don't like the value at 0? Maybe adding a comment would
> make it clearer.
I was thinking of trying to reduce some context warmup latency, but
it doesn't matter and the spinner in the second patch is much more
effective overall.
-Chris
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] i915/gem_exec_latency: Normalize results into ns
2019-01-29 18:01 ` Chris Wilson
@ 2019-02-12 23:06 ` Antonio Argenziano via igt-dev
-1 siblings, 0 replies; 14+ messages in thread
From: Antonio Argenziano @ 2019-02-12 23:06 UTC (permalink / raw)
To: Chris Wilson, intel-gfx; +Cc: igt-dev
On 29/01/19 10:01, Chris Wilson wrote:
> Quoting Antonio Argenziano (2019-01-29 17:55:45)
>>
>>
>> On 29/01/19 01:55, Chris Wilson wrote:
>>> Present the latency results in nanoseconds not RCS cycles.
>>>
>>> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
>>> ---
>>> tests/i915/gem_exec_latency.c | 38 +++++++++++++++++++++++++++++++----
>>> 1 file changed, 34 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/tests/i915/gem_exec_latency.c b/tests/i915/gem_exec_latency.c
>>> index de16322a6..ea44adc14 100644
>>> --- a/tests/i915/gem_exec_latency.c
>>> +++ b/tests/i915/gem_exec_latency.c
>>> @@ -59,6 +59,7 @@
>>> #define PREEMPT 0x2
>>>
>>> static unsigned int ring_size;
>>> +static double rcs_clock;
>>>
>>> static void
>>> poll_ring(int fd, unsigned ring, const char *name)
>>> @@ -207,7 +208,7 @@ static void latency_on_ring(int fd,
>>> igt_cork_unplug(&c);
>>>
>>> gem_set_domain(fd, obj[1].handle, I915_GEM_DOMAIN_GTT, 0);
>>> - gpu_latency = (results[repeats-1] - results[0]) / (double)(repeats-1);
>>> + gpu_latency = (results[repeats-1] - results[1]) / (double)(repeats-2);
>>
>> How come you don't like the value at 0? Maybe adding a comment would
>> make it clearer.
>
> I was thinking of trying to reduce some context warmup latency, but
> it doesn't matter and the spinner in the second patch is much more
> effective overall.
OK.
Sorry for the long delay, it ended-up in my spam folder. If you still
need it, the series is:
Reviewed-by: Antonio Argenziano <antonio.argenziano@intel.com>
> -Chris
>
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] i915/gem_exec_latency: Normalize results into ns
@ 2019-02-12 23:06 ` Antonio Argenziano via igt-dev
0 siblings, 0 replies; 14+ messages in thread
From: Antonio Argenziano via igt-dev @ 2019-02-12 23:06 UTC (permalink / raw)
To: Chris Wilson, intel-gfx; +Cc: igt-dev
On 29/01/19 10:01, Chris Wilson wrote:
> Quoting Antonio Argenziano (2019-01-29 17:55:45)
>>
>>
>> On 29/01/19 01:55, Chris Wilson wrote:
>>> Present the latency results in nanoseconds not RCS cycles.
>>>
>>> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
>>> ---
>>> tests/i915/gem_exec_latency.c | 38 +++++++++++++++++++++++++++++++----
>>> 1 file changed, 34 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/tests/i915/gem_exec_latency.c b/tests/i915/gem_exec_latency.c
>>> index de16322a6..ea44adc14 100644
>>> --- a/tests/i915/gem_exec_latency.c
>>> +++ b/tests/i915/gem_exec_latency.c
>>> @@ -59,6 +59,7 @@
>>> #define PREEMPT 0x2
>>>
>>> static unsigned int ring_size;
>>> +static double rcs_clock;
>>>
>>> static void
>>> poll_ring(int fd, unsigned ring, const char *name)
>>> @@ -207,7 +208,7 @@ static void latency_on_ring(int fd,
>>> igt_cork_unplug(&c);
>>>
>>> gem_set_domain(fd, obj[1].handle, I915_GEM_DOMAIN_GTT, 0);
>>> - gpu_latency = (results[repeats-1] - results[0]) / (double)(repeats-1);
>>> + gpu_latency = (results[repeats-1] - results[1]) / (double)(repeats-2);
>>
>> How come you don't like the value at 0? Maybe adding a comment would
>> make it clearer.
>
> I was thinking of trying to reduce some context warmup latency, but
> it doesn't matter and the spinner in the second patch is much more
> effective overall.
OK.
Sorry for the long delay, it ended-up in my spam folder. If you still
need it, the series is:
Reviewed-by: Antonio Argenziano <antonio.argenziano@intel.com>
> -Chris
>
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] i915/gem_exec_latency: Normalize results into ns
2019-02-12 23:06 ` Antonio Argenziano via igt-dev
@ 2019-02-12 23:13 ` Chris Wilson
-1 siblings, 0 replies; 14+ messages in thread
From: Chris Wilson @ 2019-02-12 23:13 UTC (permalink / raw)
To: Antonio Argenziano, intel-gfx; +Cc: igt-dev
Quoting Antonio Argenziano (2019-02-12 23:06:06)
>
>
> On 29/01/19 10:01, Chris Wilson wrote:
> > Quoting Antonio Argenziano (2019-01-29 17:55:45)
> >>
> >>
> >> On 29/01/19 01:55, Chris Wilson wrote:
> >>> Present the latency results in nanoseconds not RCS cycles.
> >>>
> >>> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> >>> ---
> >>> tests/i915/gem_exec_latency.c | 38 +++++++++++++++++++++++++++++++----
> >>> 1 file changed, 34 insertions(+), 4 deletions(-)
> >>>
> >>> diff --git a/tests/i915/gem_exec_latency.c b/tests/i915/gem_exec_latency.c
> >>> index de16322a6..ea44adc14 100644
> >>> --- a/tests/i915/gem_exec_latency.c
> >>> +++ b/tests/i915/gem_exec_latency.c
> >>> @@ -59,6 +59,7 @@
> >>> #define PREEMPT 0x2
> >>>
> >>> static unsigned int ring_size;
> >>> +static double rcs_clock;
> >>>
> >>> static void
> >>> poll_ring(int fd, unsigned ring, const char *name)
> >>> @@ -207,7 +208,7 @@ static void latency_on_ring(int fd,
> >>> igt_cork_unplug(&c);
> >>>
> >>> gem_set_domain(fd, obj[1].handle, I915_GEM_DOMAIN_GTT, 0);
> >>> - gpu_latency = (results[repeats-1] - results[0]) / (double)(repeats-1);
> >>> + gpu_latency = (results[repeats-1] - results[1]) / (double)(repeats-2);
> >>
> >> How come you don't like the value at 0? Maybe adding a comment would
> >> make it clearer.
> >
> > I was thinking of trying to reduce some context warmup latency, but
> > it doesn't matter and the spinner in the second patch is much more
> > effective overall.
>
> OK.
>
> Sorry for the long delay, it ended-up in my spam folder. If you still
> need it, the series is:
>
> Reviewed-by: Antonio Argenziano <antonio.argenziano@intel.com>
As it happens... Thanks,
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] i915/gem_exec_latency: Normalize results into ns
@ 2019-02-12 23:13 ` Chris Wilson
0 siblings, 0 replies; 14+ messages in thread
From: Chris Wilson @ 2019-02-12 23:13 UTC (permalink / raw)
To: Antonio Argenziano, intel-gfx; +Cc: igt-dev
Quoting Antonio Argenziano (2019-02-12 23:06:06)
>
>
> On 29/01/19 10:01, Chris Wilson wrote:
> > Quoting Antonio Argenziano (2019-01-29 17:55:45)
> >>
> >>
> >> On 29/01/19 01:55, Chris Wilson wrote:
> >>> Present the latency results in nanoseconds not RCS cycles.
> >>>
> >>> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> >>> ---
> >>> tests/i915/gem_exec_latency.c | 38 +++++++++++++++++++++++++++++++----
> >>> 1 file changed, 34 insertions(+), 4 deletions(-)
> >>>
> >>> diff --git a/tests/i915/gem_exec_latency.c b/tests/i915/gem_exec_latency.c
> >>> index de16322a6..ea44adc14 100644
> >>> --- a/tests/i915/gem_exec_latency.c
> >>> +++ b/tests/i915/gem_exec_latency.c
> >>> @@ -59,6 +59,7 @@
> >>> #define PREEMPT 0x2
> >>>
> >>> static unsigned int ring_size;
> >>> +static double rcs_clock;
> >>>
> >>> static void
> >>> poll_ring(int fd, unsigned ring, const char *name)
> >>> @@ -207,7 +208,7 @@ static void latency_on_ring(int fd,
> >>> igt_cork_unplug(&c);
> >>>
> >>> gem_set_domain(fd, obj[1].handle, I915_GEM_DOMAIN_GTT, 0);
> >>> - gpu_latency = (results[repeats-1] - results[0]) / (double)(repeats-1);
> >>> + gpu_latency = (results[repeats-1] - results[1]) / (double)(repeats-2);
> >>
> >> How come you don't like the value at 0? Maybe adding a comment would
> >> make it clearer.
> >
> > I was thinking of trying to reduce some context warmup latency, but
> > it doesn't matter and the spinner in the second patch is much more
> > effective overall.
>
> OK.
>
> Sorry for the long delay, it ended-up in my spam folder. If you still
> need it, the series is:
>
> Reviewed-by: Antonio Argenziano <antonio.argenziano@intel.com>
As it happens... Thanks,
-Chris
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2019-02-12 23:13 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-29 9:55 [PATCH i-g-t 1/2] i915/gem_exec_latency: Normalize results into ns Chris Wilson
2019-01-29 9:55 ` [igt-dev] " Chris Wilson
2019-01-29 9:55 ` [PATCH i-g-t 2/2] i915/gem_exec_latency: Eliminate the wakeup penalty Chris Wilson
2019-01-29 9:55 ` [igt-dev] " Chris Wilson
2019-01-29 11:12 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] i915/gem_exec_latency: Normalize results into ns Patchwork
2019-01-29 13:29 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2019-01-29 17:55 ` [igt-dev] [PATCH i-g-t 1/2] " Antonio Argenziano
2019-01-29 17:55 ` Antonio Argenziano
2019-01-29 18:01 ` Chris Wilson
2019-01-29 18:01 ` Chris Wilson
2019-02-12 23:06 ` Antonio Argenziano
2019-02-12 23:06 ` Antonio Argenziano via igt-dev
2019-02-12 23:13 ` Chris Wilson
2019-02-12 23:13 ` Chris Wilson
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.