Announcement

Collapse
No announcement yet.

Announcing radeontop, a tool for viewing the GPU usage

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Great, this sounds promising!

    Testing with glxgears running results in this oscillating output:



    Is that expected?
    Last edited by entropy; 08 July 2012, 09:38 AM.

    Comment


    • #12
      Good job, we need more efforts like this across the board (ie not only GPU monitoring).

      Now make a qt ui for it and I will award you 3845 brownie points. ;D

      Comment


      • #13
        Originally posted by deanjo View Post
        Good job, we need more efforts like this across the board (ie not only GPU monitoring).

        Now make a qt ui for it and I will award you 3845 brownie points. ;D
        inb4 patches welcome

        Comment


        • #14
          Originally posted by Michael View Post
          Nice job, been wanting this... (though ideally over debugfs/sysfs...) Is there a dump command so it would dump all of the stats and quit? That way PTS could auto-parse this data while running benchmarks
          No dump command yet, what kind of interface would you like?

          It gets the percentage numbers by polling the register the requested times per second. Do you want the percentages after one second, or immediate output (where PTS would itself have to call the app N times per second to get accurate output)?

          Or maybe it should keep running and just post the raw data for every tick?

          Testing with glxgears running results in this oscillating output:
          Didn't watch the vid, but in general the accuracy depends on the samples per sec. The default (60) is a low number pulled out of my backside, at least it has no measurable overhead.

          But to get more accurate numbers, try "-t 1000" for example.

          Now make a qt ui for it and I will award you 3845 brownie points. ;D
          I don't really like Qt. Patches welcome

          Comment


          • #15
            I have to two radeon graphic cards and one is blacklisted via xen pcihide. It seems that radeontop picks this graphic card. Everything is on 100%.

            It would be nice to choose the graphic card.

            Comment


            • #16
              hi, i have problem to compile .
              Make


              ui.c.text.present+0x8dc): undefined reference to `endwin'
              collect2: ld returned 1 exit status
              make: *** [radeontop] Errore 1

              Comment


              • #17
                Which packages are needed on Ubuntu 12.04 x64 to compile it?

                Just downloading the zip file of the repository and running make didn't work.
                I had to install "git" and run "git clone https://github.com/clbr/radeontop.git" to satisfy getver.sh, and install "libpciaccess-dev" to get pciaccess.h, but I'm still getting compilation errors:
                Code:
                detect.o: In function `init_pci':
                detect.c:(.text.init_pci+0x7): undefined reference to `pci_system_init'
                detect.c:(.text.init_pci+0x67): undefined reference to `pci_id_match_iterator_create'
                detect.c:(.text.init_pci+0x74): undefined reference to `pci_device_probe'
                detect.c:(.text.init_pci+0x92): undefined reference to `pci_device_next'
                detect.c:(.text.init_pci+0xa2): undefined reference to `pci_iterator_destroy'
                ui.o: In function `percentage':
                ui.c:(.text.percentage+0x1b): undefined reference to `stdscr'
                ui.c:(.text.percentage+0x28): undefined reference to `wattr_on'
                ui.c:(.text.percentage+0x2f): undefined reference to `stdscr'
                ui.c:(.text.percentage+0x39): undefined reference to `wmove'
                ui.c:(.text.percentage+0x4f): undefined reference to `stdscr'
                ui.c:(.text.percentage+0x71): undefined reference to `whline'
                ui.c:(.text.percentage+0x78): undefined reference to `stdscr'
                ui.c:(.text.percentage+0x8c): undefined reference to `wattr_off'
                ui.o: In function `printcenter':
                ui.c:(.text.printcenter+0xaa): undefined reference to `mvprintw'
                ui.o: In function `printright':
                ui.c:(.text.printright+0xa9): undefined reference to `mvprintw'
                ui.o: In function `present':
                ui.c:(.text.present+0x2e): undefined reference to `initscr'
                ui.c:(.text.present+0x33): undefined reference to `noecho'
                ui.c:(.text.present+0x3d): undefined reference to `halfdelay'
                ui.c:(.text.present+0x44): undefined reference to `curs_set'
                ui.c:(.text.present+0x4b): undefined reference to `stdscr'
                ui.c:(.text.present+0x50): undefined reference to `wclear'
                ui.c:(.text.present+0x59): undefined reference to `start_color'
                ui.c:(.text.present+0x6a): undefined reference to `init_pair'
                ui.c:(.text.present+0x7b): undefined reference to `init_pair'
                ui.c:(.text.present+0x8c): undefined reference to `init_pair'
                ui.c:(.text.present+0x9d): undefined reference to `init_pair'
                ui.c:(.text.present+0xae): undefined reference to `init_pair'
                ui.c:(.text.present+0xb5): undefined reference to `stdscr'
                ui.c:(.text.present+0xe5): undefined reference to `wattr_on'
                ui.c:(.text.present+0xec): undefined reference to `stdscr'
                ui.c:(.text.present+0xf8): undefined reference to `wmove'
                ui.c:(.text.present+0x103): undefined reference to `stdscr'
                ui.c:(.text.present+0x10f): undefined reference to `whline'
                ui.c:(.text.present+0x142): undefined reference to `stdscr'
                ui.c:(.text.present+0x14e): undefined reference to `wattr_off'
                ui.c:(.text.present+0x195): undefined reference to `stdscr'
                ui.c:(.text.present+0x1a1): undefined reference to `wmove'
                ui.c:(.text.present+0x1a8): undefined reference to `stdscr'
                ui.c:(.text.present+0x1ad): undefined reference to `wclrtobot'
                ui.c:(.text.present+0x2d8): undefined reference to `stdscr'
                ui.c:(.text.present+0x373): undefined reference to `wmove'
                ui.c:(.text.present+0x37e): undefined reference to `acs_map'
                ui.c:(.text.present+0x385): undefined reference to `stdscr'
                ui.c:(.text.present+0x38c): undefined reference to `whline'
                ui.c:(.text.present+0x397): undefined reference to `stdscr'
                ui.c:(.text.present+0x3a1): undefined reference to `wmove'
                ui.c:(.text.present+0x3b0): undefined reference to `acs_map'
                ui.c:(.text.present+0x3b7): undefined reference to `stdscr'
                ui.c:(.text.present+0x3bc): undefined reference to `wvline'
                ui.c:(.text.present+0x3c7): undefined reference to `stdscr'
                ui.c:(.text.present+0x3d1): undefined reference to `wmove'
                ui.c:(.text.present+0x3dc): undefined reference to `acs_map'
                ui.c:(.text.present+0x3e3): undefined reference to `stdscr'
                ui.c:(.text.present+0x3e8): undefined reference to `waddch'
                ui.c:(.text.present+0x3f3): undefined reference to `stdscr'
                ui.c:(.text.present+0x3ff): undefined reference to `wattr_on'
                ui.c:(.text.present+0x445): undefined reference to `stdscr'
                ui.c:(.text.present+0x451): undefined reference to `wattr_off'
                ui.c:(.text.present+0x497): undefined reference to `stdscr'
                ui.c:(.text.present+0x4a3): undefined reference to `wattr_on'
                ui.c:(.text.present+0x4e7): undefined reference to `stdscr'
                ui.c:(.text.present+0x4f3): undefined reference to `wattr_off'
                ui.c:(.text.present+0x4fa): undefined reference to `stdscr'
                ui.c:(.text.present+0x506): undefined reference to `wattr_on'
                ui.c:(.text.present+0x5b5): undefined reference to `stdscr'
                ui.c:(.text.present+0x5c1): undefined reference to `wattr_off'
                ui.c:(.text.present+0x5d5): undefined reference to `stdscr'
                ui.c:(.text.present+0x5e1): undefined reference to `wattr_on'
                ui.c:(.text.present+0x708): undefined reference to `stdscr'
                ui.c:(.text.present+0x714): undefined reference to `wattr_off'
                ui.c:(.text.present+0x7ab): undefined reference to `stdscr'
                ui.c:(.text.present+0x7b7): undefined reference to `wattr_on'
                ui.c:(.text.present+0x89c): undefined reference to `stdscr'
                ui.c:(.text.present+0x8a8): undefined reference to `wattr_off'
                ui.c:(.text.present+0x8af): undefined reference to `stdscr'
                ui.c:(.text.present+0x8b4): undefined reference to `wrefresh'
                ui.c:(.text.present+0x8bb): undefined reference to `stdscr'
                ui.c:(.text.present+0x8c0): undefined reference to `wgetch'
                ui.c:(.text.present+0x8dc): undefined reference to `endwin'
                What's missing?

                Machine: Lenovo X121e - AMD E-350

                Comment


                • #18
                  Very nice! intel-gpu-top has been really useful for me when trying to tune performance of the Intel driver, so I'm really glad to see an equivalent tool come along for the Radeon drivers. Keep up the good work
                  Free Software Developer .:. Mesa and Xorg
                  Opinions expressed in these forum posts are my own.

                  Comment


                  • #19
                    The errors are because you build with --as-needed

                    In order to not fail with --as-needed, the linking order needs to be fixed:
                    Code:
                    --- a/Makefile  2012-07-08 16:43:32.607932237 +0200
                    +++ b/Makefile  2012-07-08 16:43:58.753934197 +0200
                    @@ -31,7 +31,7 @@
                     $(obj): $(wildcard *.h) version.h
                     
                     $(bin): $(obj)
                    -       gcc -o $(bin) $(CFLAGS) $(LDFLAGS) $(obj)
                    +       gcc -o $(bin) $(CFLAGS) $(obj) $(LDFLAGS)
                     
                     clean:
                            rm -f *.o $(bin)
                    Alternatively, drop -Wl,--as-needed from your LDFLAGS.

                    Comment


                    • #20
                      Thanks now works.

                      Comment

                      Working...
                      X