nschloe / tuna

:fish: Python profile viewer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Visualization in Tuna

pmirallesr opened this issue · comments

As it stands Tuna is a great tool. However it find it has some user interface deficiencies. I'll use this as an example

image

  • Every box is blue except some gray ones. This is... just annoying and makes it harder to navigate, or quickly recognize similar calls. A color scheme will improve how fast the user can process the info served to him. The UI also does not highlight calls to the same scripts from different functions
  • Also I don't know why some boxes are blue and some gray. It's probably documented somewhere, and intuitively it's related to depth, but it's not immediately obvious to the user. This is minor though
  • The UI insists in trying to show text in places it does not fit. You end up with small boxes that have stuff like "...py::165..." written in them because the string does not fit. IMO it'd be better to just hide these strings like snakeviz does
  • Navigating function calls is painful. Say I zoom into rl_algo.py on the left. To zoom back out, I need to click on the slab on top of it (its parent function) then go on clicking until I get to root. This is seriously annoying and slows me down if I'm examining the deeper calls. This is easily my biggest gripe with the current UI after color
  • There's no access to the actual profile data like in snakeviz. Its search + filtering + visualization of the data is immensely useful.

That's some of the issues I have with it. That's not to bash Tuna. Thank you for making a tool that accurately shows exec times. But I think you'd be best served by emulating snakeviz's visualization and building from there (e.g. adding a browser that lets me quickly access other profiles in this or nearby folders). As it stands yours lacks features that snakeviz implements and that makes life orders of magnitude simpler for a user.

There's now a Reset zoom button.