Thread (1 message) 1 message, 1 author, 2018-03-29

Re: [Intel-gfx] [igt-dev] [RFC i-g-t] intel-gpu-top: Rewrite the tool to be safe to use

From: Tvrtko Ursulin <hidden>
Date: 2018-03-29 10:49:01
Also in: intel-gfx

On 28/03/2018 21:11, Rinat Ibragimov wrote:
quoted
Среда, 28 марта 2018, 21:30 +03:00 от Tvrtko Ursulin [off-list ref]:
quoted
+static struct engines *discover_engines(void)
  {
-uint32_t devid = pci_dev->device_id;
-uint16_t gcfgc;
+const char *sysfs_root = "/sys/devices/i915/events";
Just a question.
I think, I have Linux 4.15.11 (from Debian testing) now. And there are no such files.
Are there any estimates about when this feature is expected to be available?
4.17 I think. I could make it work with 4.16 as well, if there would be 
demand, just need to ignore counters enumerated in sysfs but not 
actually present in hardware.
quoted
-static void ring_init(struct ring *ring)
+static uint64_t pmu_read_multi(int fd, unsigned int num, uint64_t *val)
  {
-ring->size = (((ring_read(ring, RING_LEN) & RING_NR_PAGES) >> 12) + 1) * 4096;
+uint64_t buf[2 + num];
+unsigned int i;
+
+assert(read(fd, buf, sizeof(buf)) == sizeof(buf));
Will have undesired effects with NDEBUG.
quoted
-int full;
+uint64_t data[2];
  
-if (!ring->size)
-return;
+assert(read(fd, data, sizeof(data)) == sizeof(data));
Same here.
Thanks, got a bit disconnected from userspace development patterns over 
the years.
quoted
+/* Get terminal size. */
+if (ioctl(0, TIOCGWINSZ, &ws) != -1) {
+con_w = ws.ws_col;
+con_h = ws.ws_row;
+}
If you move this into the loop itself, the tool will adapt to changes in
terminal width and height dynamically.
Makes sense, done in v2.

Regards,

Tvrtko
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help