Author Topic: USB performance monitors  (Read 2106 times)

0 Members and 1 Guest are viewing this topic.

Online westfw

  • Super Contributor
  • ***
  • Posts: 3610
  • Country: us
USB performance monitors
« on: June 26, 2019, 12:53:28 am »
I'm looking for modified USB drivers for a PC/Mac/Linux system that will give me information useful for optimizing the performance of microcontroller-side USB code.
I think I've seen "trace" code that provides really detailed information about everything that goes on, which is probably useful for debugging the actual driver logic, but in this case I'm more interested in something that will tell me stuff like "average message size over 1MB was 64bytes instead of 2bytes!  Good for you!", which should be easier (?)

Offline kamtar

  • Regular Contributor
  • *
  • Posts: 62
Re: USB performance monitors
« Reply #1 on: June 26, 2019, 11:12:13 pm »
I doubt that there is something like that. But Wireshark with USB capture should be more than usable for your needs.

Offline Nominal Animal

  • Super Contributor
  • ***
  • Posts: 3222
  • Country: fi
    • My home page and email address
Re: USB performance monitors
« Reply #2 on: June 27, 2019, 10:30:33 am »
There is usbtop for Linux.  I don't think it has a USB packet size histogram, but adding one shouldn't be too difficult.

Personally, I tend to use the full dump instead.

Offline mrflibble

  • Super Contributor
  • ***
  • Posts: 2052
  • Country: nl
Re: USB performance monitors
« Reply #3 on: July 16, 2019, 07:01:47 pm »
You could use usbmon + some scripting. Or for a more general solution you could use BPF through a suitable frontend. See for example the BPF Compiler Collection. BCC contains all sorts of handy performance measurement tools. The show-pretty-histogram-for-filesystem-performance tools in there might get you close enough. Or you could use dtrace. The following links give a good overview:


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo