USB performance/traffic monitor?












10














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.










share|improve this question




















  • 1




    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


















10














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.










share|improve this question




















  • 1




    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
















10












10








10


2





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.










share|improve this question















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






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Apr 13 '17 at 12:36









Community

1




1










asked Apr 5 '11 at 14:36









Mr. Shickadance

2,23961826




2,23961826








  • 1




    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
















  • 1




    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










1




1




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












4 Answers
4






active

oldest

votes


















3














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.






share|improve this answer

















  • 2




    I was hoping for a pre-existing tool, but I suppose this will be sufficient.
    – Mr. Shickadance
    Apr 18 '11 at 22:12



















2














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





share|improve this answer





















  • Thanks for pointing me to usbtop. It looks useful. Here's how to install it: unix.stackexchange.com/a/489268/114401.
    – Gabriel Staples
    Dec 16 at 7:46



















1














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.






share|improve this answer





























    1














    1. usbtop:



    As sebas points out, usbtop seems to give a certain minimum level of useful information (although it could be much better), so I recommend it.



    enter image description here



    Here's how to install it:





    1. Clone the git repo:



      git clone https://github.com/aguinet/usbtop.git 



    2. Navigate to the directory that just got created from git clone:



      cd usbtop



    3. Install dependencies:



      sudo apt update 
      sudo apt install libboost-dev libpcap-dev libboost-thread-dev libboost-system-dev



    4. Create local build directory & cd into it:



      mkdir _build && cd _build 



    5. Run cmake to prepare to build usbtop from source:



      cmake -DCMAKE_BUILD_TYPE=Release .. 



    6. Build usbtop from source:



      make 



    7. Install usbtop:



      sudo make install 



    8. Load the usbmon kernel module to open access to USB buses (I think this is what that does, but I know it's required):



      sudo modprobe usbmon 



    9. Run usbtop (if this doesn't work, use sudo usbtop instead):



      usbtop 



    If I missed anything let me know in the comments.



    Install References:




    • https://github.com/aguinet/usbtop/blob/master/INSTALL

    • https://github.com/aguinet/usbtop/issues/3#issuecomment-274325720


    2. Update: You can also use iostat instead:



    sudo apt install sysstat


    Run at 1-second intervals with:



    iostat -d 1


    OR with 0.1-second intervals with:



    watch -n 0.1 iostat


    Sample output of iostat -d 1:



    enter image description here



    References:



    https://askubuntu.com/questions/3561/how-do-i-monitor-disk-activity-on-a-specific-drive



    Additional reading:



    https://www.znetlive.com/blog/monitor-disk-io-windows-linux/



    Related:




    • https://askubuntu.com/questions/276669/how-to-monitor-disk-activity

    • https://askubuntu.com/questions/436354/how-to-check-the-disk-activity-of-my-hard-drive

    • https://askubuntu.com/questions/87035/how-to-check-hard-disk-performance






    share|improve this answer























      Your Answer








      StackExchange.ready(function() {
      var channelOptions = {
      tags: "".split(" "),
      id: "106"
      };
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function() {
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled) {
      StackExchange.using("snippets", function() {
      createEditor();
      });
      }
      else {
      createEditor();
      }
      });

      function createEditor() {
      StackExchange.prepareEditor({
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: false,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: null,
      bindNavPrevention: true,
      postfix: "",
      imageUploader: {
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      },
      onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      });


      }
      });














      draft saved

      draft discarded


















      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

























      4 Answers
      4






      active

      oldest

      votes








      4 Answers
      4






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      3














      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.






      share|improve this answer

















      • 2




        I was hoping for a pre-existing tool, but I suppose this will be sufficient.
        – Mr. Shickadance
        Apr 18 '11 at 22:12
















      3














      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.






      share|improve this answer

















      • 2




        I was hoping for a pre-existing tool, but I suppose this will be sufficient.
        – Mr. Shickadance
        Apr 18 '11 at 22:12














      3












      3








      3






      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.






      share|improve this answer












      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.







      share|improve this answer












      share|improve this answer



      share|improve this answer










      answered Apr 17 '11 at 4:09









      Malvineous

      1,92511734




      1,92511734








      • 2




        I was hoping for a pre-existing tool, but I suppose this will be sufficient.
        – Mr. Shickadance
        Apr 18 '11 at 22:12














      • 2




        I was hoping for a pre-existing tool, but I suppose this will be sufficient.
        – Mr. Shickadance
        Apr 18 '11 at 22:12








      2




      2




      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













      2














      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





      share|improve this answer





















      • Thanks for pointing me to usbtop. It looks useful. Here's how to install it: unix.stackexchange.com/a/489268/114401.
        – Gabriel Staples
        Dec 16 at 7:46
















      2














      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





      share|improve this answer





















      • Thanks for pointing me to usbtop. It looks useful. Here's how to install it: unix.stackexchange.com/a/489268/114401.
        – Gabriel Staples
        Dec 16 at 7:46














      2












      2








      2






      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





      share|improve this answer












      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






      share|improve this answer












      share|improve this answer



      share|improve this answer










      answered Jan 22 '17 at 12:13









      sebas

      211




      211












      • Thanks for pointing me to usbtop. It looks useful. Here's how to install it: unix.stackexchange.com/a/489268/114401.
        – Gabriel Staples
        Dec 16 at 7:46


















      • Thanks for pointing me to usbtop. It looks useful. Here's how to install it: unix.stackexchange.com/a/489268/114401.
        – Gabriel Staples
        Dec 16 at 7:46
















      Thanks for pointing me to usbtop. It looks useful. Here's how to install it: unix.stackexchange.com/a/489268/114401.
      – Gabriel Staples
      Dec 16 at 7:46




      Thanks for pointing me to usbtop. It looks useful. Here's how to install it: unix.stackexchange.com/a/489268/114401.
      – Gabriel Staples
      Dec 16 at 7:46











      1














      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.






      share|improve this answer


























        1














        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.






        share|improve this answer
























          1












          1








          1






          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.






          share|improve this answer












          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.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Sep 9 '13 at 16:27









          Pipe

          1111




          1111























              1














              1. usbtop:



              As sebas points out, usbtop seems to give a certain minimum level of useful information (although it could be much better), so I recommend it.



              enter image description here



              Here's how to install it:





              1. Clone the git repo:



                git clone https://github.com/aguinet/usbtop.git 



              2. Navigate to the directory that just got created from git clone:



                cd usbtop



              3. Install dependencies:



                sudo apt update 
                sudo apt install libboost-dev libpcap-dev libboost-thread-dev libboost-system-dev



              4. Create local build directory & cd into it:



                mkdir _build && cd _build 



              5. Run cmake to prepare to build usbtop from source:



                cmake -DCMAKE_BUILD_TYPE=Release .. 



              6. Build usbtop from source:



                make 



              7. Install usbtop:



                sudo make install 



              8. Load the usbmon kernel module to open access to USB buses (I think this is what that does, but I know it's required):



                sudo modprobe usbmon 



              9. Run usbtop (if this doesn't work, use sudo usbtop instead):



                usbtop 



              If I missed anything let me know in the comments.



              Install References:




              • https://github.com/aguinet/usbtop/blob/master/INSTALL

              • https://github.com/aguinet/usbtop/issues/3#issuecomment-274325720


              2. Update: You can also use iostat instead:



              sudo apt install sysstat


              Run at 1-second intervals with:



              iostat -d 1


              OR with 0.1-second intervals with:



              watch -n 0.1 iostat


              Sample output of iostat -d 1:



              enter image description here



              References:



              https://askubuntu.com/questions/3561/how-do-i-monitor-disk-activity-on-a-specific-drive



              Additional reading:



              https://www.znetlive.com/blog/monitor-disk-io-windows-linux/



              Related:




              • https://askubuntu.com/questions/276669/how-to-monitor-disk-activity

              • https://askubuntu.com/questions/436354/how-to-check-the-disk-activity-of-my-hard-drive

              • https://askubuntu.com/questions/87035/how-to-check-hard-disk-performance






              share|improve this answer




























                1














                1. usbtop:



                As sebas points out, usbtop seems to give a certain minimum level of useful information (although it could be much better), so I recommend it.



                enter image description here



                Here's how to install it:





                1. Clone the git repo:



                  git clone https://github.com/aguinet/usbtop.git 



                2. Navigate to the directory that just got created from git clone:



                  cd usbtop



                3. Install dependencies:



                  sudo apt update 
                  sudo apt install libboost-dev libpcap-dev libboost-thread-dev libboost-system-dev



                4. Create local build directory & cd into it:



                  mkdir _build && cd _build 



                5. Run cmake to prepare to build usbtop from source:



                  cmake -DCMAKE_BUILD_TYPE=Release .. 



                6. Build usbtop from source:



                  make 



                7. Install usbtop:



                  sudo make install 



                8. Load the usbmon kernel module to open access to USB buses (I think this is what that does, but I know it's required):



                  sudo modprobe usbmon 



                9. Run usbtop (if this doesn't work, use sudo usbtop instead):



                  usbtop 



                If I missed anything let me know in the comments.



                Install References:




                • https://github.com/aguinet/usbtop/blob/master/INSTALL

                • https://github.com/aguinet/usbtop/issues/3#issuecomment-274325720


                2. Update: You can also use iostat instead:



                sudo apt install sysstat


                Run at 1-second intervals with:



                iostat -d 1


                OR with 0.1-second intervals with:



                watch -n 0.1 iostat


                Sample output of iostat -d 1:



                enter image description here



                References:



                https://askubuntu.com/questions/3561/how-do-i-monitor-disk-activity-on-a-specific-drive



                Additional reading:



                https://www.znetlive.com/blog/monitor-disk-io-windows-linux/



                Related:




                • https://askubuntu.com/questions/276669/how-to-monitor-disk-activity

                • https://askubuntu.com/questions/436354/how-to-check-the-disk-activity-of-my-hard-drive

                • https://askubuntu.com/questions/87035/how-to-check-hard-disk-performance






                share|improve this answer


























                  1












                  1








                  1






                  1. usbtop:



                  As sebas points out, usbtop seems to give a certain minimum level of useful information (although it could be much better), so I recommend it.



                  enter image description here



                  Here's how to install it:





                  1. Clone the git repo:



                    git clone https://github.com/aguinet/usbtop.git 



                  2. Navigate to the directory that just got created from git clone:



                    cd usbtop



                  3. Install dependencies:



                    sudo apt update 
                    sudo apt install libboost-dev libpcap-dev libboost-thread-dev libboost-system-dev



                  4. Create local build directory & cd into it:



                    mkdir _build && cd _build 



                  5. Run cmake to prepare to build usbtop from source:



                    cmake -DCMAKE_BUILD_TYPE=Release .. 



                  6. Build usbtop from source:



                    make 



                  7. Install usbtop:



                    sudo make install 



                  8. Load the usbmon kernel module to open access to USB buses (I think this is what that does, but I know it's required):



                    sudo modprobe usbmon 



                  9. Run usbtop (if this doesn't work, use sudo usbtop instead):



                    usbtop 



                  If I missed anything let me know in the comments.



                  Install References:




                  • https://github.com/aguinet/usbtop/blob/master/INSTALL

                  • https://github.com/aguinet/usbtop/issues/3#issuecomment-274325720


                  2. Update: You can also use iostat instead:



                  sudo apt install sysstat


                  Run at 1-second intervals with:



                  iostat -d 1


                  OR with 0.1-second intervals with:



                  watch -n 0.1 iostat


                  Sample output of iostat -d 1:



                  enter image description here



                  References:



                  https://askubuntu.com/questions/3561/how-do-i-monitor-disk-activity-on-a-specific-drive



                  Additional reading:



                  https://www.znetlive.com/blog/monitor-disk-io-windows-linux/



                  Related:




                  • https://askubuntu.com/questions/276669/how-to-monitor-disk-activity

                  • https://askubuntu.com/questions/436354/how-to-check-the-disk-activity-of-my-hard-drive

                  • https://askubuntu.com/questions/87035/how-to-check-hard-disk-performance






                  share|improve this answer














                  1. usbtop:



                  As sebas points out, usbtop seems to give a certain minimum level of useful information (although it could be much better), so I recommend it.



                  enter image description here



                  Here's how to install it:





                  1. Clone the git repo:



                    git clone https://github.com/aguinet/usbtop.git 



                  2. Navigate to the directory that just got created from git clone:



                    cd usbtop



                  3. Install dependencies:



                    sudo apt update 
                    sudo apt install libboost-dev libpcap-dev libboost-thread-dev libboost-system-dev



                  4. Create local build directory & cd into it:



                    mkdir _build && cd _build 



                  5. Run cmake to prepare to build usbtop from source:



                    cmake -DCMAKE_BUILD_TYPE=Release .. 



                  6. Build usbtop from source:



                    make 



                  7. Install usbtop:



                    sudo make install 



                  8. Load the usbmon kernel module to open access to USB buses (I think this is what that does, but I know it's required):



                    sudo modprobe usbmon 



                  9. Run usbtop (if this doesn't work, use sudo usbtop instead):



                    usbtop 



                  If I missed anything let me know in the comments.



                  Install References:




                  • https://github.com/aguinet/usbtop/blob/master/INSTALL

                  • https://github.com/aguinet/usbtop/issues/3#issuecomment-274325720


                  2. Update: You can also use iostat instead:



                  sudo apt install sysstat


                  Run at 1-second intervals with:



                  iostat -d 1


                  OR with 0.1-second intervals with:



                  watch -n 0.1 iostat


                  Sample output of iostat -d 1:



                  enter image description here



                  References:



                  https://askubuntu.com/questions/3561/how-do-i-monitor-disk-activity-on-a-specific-drive



                  Additional reading:



                  https://www.znetlive.com/blog/monitor-disk-io-windows-linux/



                  Related:




                  • https://askubuntu.com/questions/276669/how-to-monitor-disk-activity

                  • https://askubuntu.com/questions/436354/how-to-check-the-disk-activity-of-my-hard-drive

                  • https://askubuntu.com/questions/87035/how-to-check-hard-disk-performance







                  share|improve this answer














                  share|improve this answer



                  share|improve this answer








                  edited Dec 21 at 21:06

























                  answered Dec 16 at 7:45









                  Gabriel Staples

                  1256




                  1256






























                      draft saved

                      draft discarded




















































                      Thanks for contributing an answer to Unix & Linux Stack Exchange!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid



                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.


                      To learn more, see our tips on writing great answers.





                      Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


                      Please pay close attention to the following guidance:


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid



                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.


                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      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





















































                      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







                      Popular posts from this blog

                      Morgemoulin

                      Scott Moir

                      Souastre