USB performance/traffic monitor?

Clash Royale CLAN TAG#URR8PPP
up vote
8
down vote
favorite
First of all, I found a similar question but it doesn't really solve my problem. I am trying to discover if the USB bus for a device I am using is the bottleneck in my program.
How can I monitor a USB bus (similar to how gnome-system-monitor works) to show bus utilization? Basically I want to identify when the bus is being 'maxed' out. I guess what I am looking for is some interface for usbmon, as that appears like it would do what I need.
This came about from testing the USRP and GNU Radio. I am running into a situation where it appears that the USB bus could be a limiting factor, so I ask the more general question of USB performance monitoring.
usb performance monitoring
add a comment |
up vote
8
down vote
favorite
First of all, I found a similar question but it doesn't really solve my problem. I am trying to discover if the USB bus for a device I am using is the bottleneck in my program.
How can I monitor a USB bus (similar to how gnome-system-monitor works) to show bus utilization? Basically I want to identify when the bus is being 'maxed' out. I guess what I am looking for is some interface for usbmon, as that appears like it would do what I need.
This came about from testing the USRP and GNU Radio. I am running into a situation where it appears that the USB bus could be a limiting factor, so I ask the more general question of USB performance monitoring.
usb performance monitoring
While wireshark and usbmon get the traffic, I need something that can more easily give me an idea of throughput and such.
– Mr. Shickadance
Apr 5 '11 at 14:38
Do you see the usb bus reaching its theoretical maximum? Did you compare the traffic you get with benchmarks of your hardware? Max throughput is usually depended on the device connected and not the system bus, so to test it properly you'll need some hardware specifically made for that purpose.
– forcefsck
Apr 13 '11 at 17:21
add a comment |
up vote
8
down vote
favorite
up vote
8
down vote
favorite
First of all, I found a similar question but it doesn't really solve my problem. I am trying to discover if the USB bus for a device I am using is the bottleneck in my program.
How can I monitor a USB bus (similar to how gnome-system-monitor works) to show bus utilization? Basically I want to identify when the bus is being 'maxed' out. I guess what I am looking for is some interface for usbmon, as that appears like it would do what I need.
This came about from testing the USRP and GNU Radio. I am running into a situation where it appears that the USB bus could be a limiting factor, so I ask the more general question of USB performance monitoring.
usb performance monitoring
First of all, I found a similar question but it doesn't really solve my problem. I am trying to discover if the USB bus for a device I am using is the bottleneck in my program.
How can I monitor a USB bus (similar to how gnome-system-monitor works) to show bus utilization? Basically I want to identify when the bus is being 'maxed' out. I guess what I am looking for is some interface for usbmon, as that appears like it would do what I need.
This came about from testing the USRP and GNU Radio. I am running into a situation where it appears that the USB bus could be a limiting factor, so I ask the more general question of USB performance monitoring.
usb performance monitoring
usb performance monitoring
edited Apr 13 '17 at 12:36
Community♦
1
1
asked Apr 5 '11 at 14:36
Mr. Shickadance
2,18961825
2,18961825
While wireshark and usbmon get the traffic, I need something that can more easily give me an idea of throughput and such.
– Mr. Shickadance
Apr 5 '11 at 14:38
Do you see the usb bus reaching its theoretical maximum? Did you compare the traffic you get with benchmarks of your hardware? Max throughput is usually depended on the device connected and not the system bus, so to test it properly you'll need some hardware specifically made for that purpose.
– forcefsck
Apr 13 '11 at 17:21
add a comment |
While wireshark and usbmon get the traffic, I need something that can more easily give me an idea of throughput and such.
– Mr. Shickadance
Apr 5 '11 at 14:38
Do you see the usb bus reaching its theoretical maximum? Did you compare the traffic you get with benchmarks of your hardware? Max throughput is usually depended on the device connected and not the system bus, so to test it properly you'll need some hardware specifically made for that purpose.
– forcefsck
Apr 13 '11 at 17:21
While wireshark and usbmon get the traffic, I need something that can more easily give me an idea of throughput and such.
– Mr. Shickadance
Apr 5 '11 at 14:38
While wireshark and usbmon get the traffic, I need something that can more easily give me an idea of throughput and such.
– Mr. Shickadance
Apr 5 '11 at 14:38
Do you see the usb bus reaching its theoretical maximum? Did you compare the traffic you get with benchmarks of your hardware? Max throughput is usually depended on the device connected and not the system bus, so to test it properly you'll need some hardware specifically made for that purpose.
– forcefsck
Apr 13 '11 at 17:21
Do you see the usb bus reaching its theoretical maximum? Did you compare the traffic you get with benchmarks of your hardware? Max throughput is usually depended on the device connected and not the system bus, so to test it properly you'll need some hardware specifically made for that purpose.
– forcefsck
Apr 13 '11 at 17:21
add a comment |
3 Answers
3
active
oldest
votes
up vote
3
down vote
accepted
Since usbmon provides the length of each packet transferred, I would approach this by writing a quick program to parse the 0u file (which has data for all USB devices.) It would pick out the USB bus and device numbers, then keep a running total of the packet length field in both directions for each device.
This will then give you the amount of data transferred per device, in each direction. If you print it once a second you'll get a pretty good idea of each device's throughput. Note that it won't include any USB overhead, but if you compare the figures to a device that is able to saturate the available bandwidth you'll know whether you're getting close to the limit.
1
I was hoping for a pre-existing tool, but I suppose this will be sufficient.
– Mr. Shickadance
Apr 18 '11 at 22:12
add a comment |
up vote
2
down vote
Use usbtop, it gives a nice overview of what devices are using how much bandwidth:
Bus ID 1 (USB bus number 1) To device From device
Device ID 1 : 0.00 kb/s 0.00 kb/s
Device ID 2 : 0.00 kb/s 0.00 kb/s
Bus ID 2 (USB bus number 2) To device From device
Device ID 1 : 0.00 kb/s 0.00 kb/s
Device ID 4 : 141.73 kb/s 13777.68 kb/s
Device ID 5 : 9.98 kb/s 11.24 kb/s
Device ID 6 : 0.00 kb/s 0.00 kb/s
Device ID 7 : 0.00 kb/s 0.00 kb/s
Device ID 8 : 141.71 kb/s 15257.26 kb/s
add a comment |
up vote
1
down vote
I've wrote a pair of shell scripts to get the throughput from a USB device. If someone what to use it, you can find it in this post.
add a comment |
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
3
down vote
accepted
Since usbmon provides the length of each packet transferred, I would approach this by writing a quick program to parse the 0u file (which has data for all USB devices.) It would pick out the USB bus and device numbers, then keep a running total of the packet length field in both directions for each device.
This will then give you the amount of data transferred per device, in each direction. If you print it once a second you'll get a pretty good idea of each device's throughput. Note that it won't include any USB overhead, but if you compare the figures to a device that is able to saturate the available bandwidth you'll know whether you're getting close to the limit.
1
I was hoping for a pre-existing tool, but I suppose this will be sufficient.
– Mr. Shickadance
Apr 18 '11 at 22:12
add a comment |
up vote
3
down vote
accepted
Since usbmon provides the length of each packet transferred, I would approach this by writing a quick program to parse the 0u file (which has data for all USB devices.) It would pick out the USB bus and device numbers, then keep a running total of the packet length field in both directions for each device.
This will then give you the amount of data transferred per device, in each direction. If you print it once a second you'll get a pretty good idea of each device's throughput. Note that it won't include any USB overhead, but if you compare the figures to a device that is able to saturate the available bandwidth you'll know whether you're getting close to the limit.
1
I was hoping for a pre-existing tool, but I suppose this will be sufficient.
– Mr. Shickadance
Apr 18 '11 at 22:12
add a comment |
up vote
3
down vote
accepted
up vote
3
down vote
accepted
Since usbmon provides the length of each packet transferred, I would approach this by writing a quick program to parse the 0u file (which has data for all USB devices.) It would pick out the USB bus and device numbers, then keep a running total of the packet length field in both directions for each device.
This will then give you the amount of data transferred per device, in each direction. If you print it once a second you'll get a pretty good idea of each device's throughput. Note that it won't include any USB overhead, but if you compare the figures to a device that is able to saturate the available bandwidth you'll know whether you're getting close to the limit.
Since usbmon provides the length of each packet transferred, I would approach this by writing a quick program to parse the 0u file (which has data for all USB devices.) It would pick out the USB bus and device numbers, then keep a running total of the packet length field in both directions for each device.
This will then give you the amount of data transferred per device, in each direction. If you print it once a second you'll get a pretty good idea of each device's throughput. Note that it won't include any USB overhead, but if you compare the figures to a device that is able to saturate the available bandwidth you'll know whether you're getting close to the limit.
answered Apr 17 '11 at 4:09
Malvineous
1,85811633
1,85811633
1
I was hoping for a pre-existing tool, but I suppose this will be sufficient.
– Mr. Shickadance
Apr 18 '11 at 22:12
add a comment |
1
I was hoping for a pre-existing tool, but I suppose this will be sufficient.
– Mr. Shickadance
Apr 18 '11 at 22:12
1
1
I was hoping for a pre-existing tool, but I suppose this will be sufficient.
– Mr. Shickadance
Apr 18 '11 at 22:12
I was hoping for a pre-existing tool, but I suppose this will be sufficient.
– Mr. Shickadance
Apr 18 '11 at 22:12
add a comment |
up vote
2
down vote
Use usbtop, it gives a nice overview of what devices are using how much bandwidth:
Bus ID 1 (USB bus number 1) To device From device
Device ID 1 : 0.00 kb/s 0.00 kb/s
Device ID 2 : 0.00 kb/s 0.00 kb/s
Bus ID 2 (USB bus number 2) To device From device
Device ID 1 : 0.00 kb/s 0.00 kb/s
Device ID 4 : 141.73 kb/s 13777.68 kb/s
Device ID 5 : 9.98 kb/s 11.24 kb/s
Device ID 6 : 0.00 kb/s 0.00 kb/s
Device ID 7 : 0.00 kb/s 0.00 kb/s
Device ID 8 : 141.71 kb/s 15257.26 kb/s
add a comment |
up vote
2
down vote
Use usbtop, it gives a nice overview of what devices are using how much bandwidth:
Bus ID 1 (USB bus number 1) To device From device
Device ID 1 : 0.00 kb/s 0.00 kb/s
Device ID 2 : 0.00 kb/s 0.00 kb/s
Bus ID 2 (USB bus number 2) To device From device
Device ID 1 : 0.00 kb/s 0.00 kb/s
Device ID 4 : 141.73 kb/s 13777.68 kb/s
Device ID 5 : 9.98 kb/s 11.24 kb/s
Device ID 6 : 0.00 kb/s 0.00 kb/s
Device ID 7 : 0.00 kb/s 0.00 kb/s
Device ID 8 : 141.71 kb/s 15257.26 kb/s
add a comment |
up vote
2
down vote
up vote
2
down vote
Use usbtop, it gives a nice overview of what devices are using how much bandwidth:
Bus ID 1 (USB bus number 1) To device From device
Device ID 1 : 0.00 kb/s 0.00 kb/s
Device ID 2 : 0.00 kb/s 0.00 kb/s
Bus ID 2 (USB bus number 2) To device From device
Device ID 1 : 0.00 kb/s 0.00 kb/s
Device ID 4 : 141.73 kb/s 13777.68 kb/s
Device ID 5 : 9.98 kb/s 11.24 kb/s
Device ID 6 : 0.00 kb/s 0.00 kb/s
Device ID 7 : 0.00 kb/s 0.00 kb/s
Device ID 8 : 141.71 kb/s 15257.26 kb/s
Use usbtop, it gives a nice overview of what devices are using how much bandwidth:
Bus ID 1 (USB bus number 1) To device From device
Device ID 1 : 0.00 kb/s 0.00 kb/s
Device ID 2 : 0.00 kb/s 0.00 kb/s
Bus ID 2 (USB bus number 2) To device From device
Device ID 1 : 0.00 kb/s 0.00 kb/s
Device ID 4 : 141.73 kb/s 13777.68 kb/s
Device ID 5 : 9.98 kb/s 11.24 kb/s
Device ID 6 : 0.00 kb/s 0.00 kb/s
Device ID 7 : 0.00 kb/s 0.00 kb/s
Device ID 8 : 141.71 kb/s 15257.26 kb/s
answered Jan 22 '17 at 12:13
sebas
211
211
add a comment |
add a comment |
up vote
1
down vote
I've wrote a pair of shell scripts to get the throughput from a USB device. If someone what to use it, you can find it in this post.
add a comment |
up vote
1
down vote
I've wrote a pair of shell scripts to get the throughput from a USB device. If someone what to use it, you can find it in this post.
add a comment |
up vote
1
down vote
up vote
1
down vote
I've wrote a pair of shell scripts to get the throughput from a USB device. If someone what to use it, you can find it in this post.
I've wrote a pair of shell scripts to get the throughput from a USB device. If someone what to use it, you can find it in this post.
answered Sep 9 '13 at 16:27
Pipe
1111
1111
add a comment |
add a comment |
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f10671%2fusb-performance-traffic-monitor%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
While wireshark and usbmon get the traffic, I need something that can more easily give me an idea of throughput and such.
– Mr. Shickadance
Apr 5 '11 at 14:38
Do you see the usb bus reaching its theoretical maximum? Did you compare the traffic you get with benchmarks of your hardware? Max throughput is usually depended on the device connected and not the system bus, so to test it properly you'll need some hardware specifically made for that purpose.
– forcefsck
Apr 13 '11 at 17:21