请求帮助解释性能报告输出

请求帮助解释性能报告输出

我正在尝试解决使用 jmtpfs 安装的 ubuntu server 18.04 上的 android 手机通过 usb 传输文件时出现长时间延迟的问题。这是对问题的扩展:“在通过 jmtpfs 安装的 Android 上,Stat 系统调用需要很长时间才能完成“。

我记录了命令的性能输出:

sudo perf record -g cp -pv /home/odwongm/phone/Phone/DCIM/Camera/20140426_174534.jpg /home/odwongm/phone/Phone/DCIM/Camera/20140426_174607.jpg /home/odwongm/phone_rsync/ 

我对此一无所知,不知道如何解释结果。我认为结果表明,大多数样本都位于:copy_user_generic_string。

样本:44 个事件“周期”,事件计数(大约):16619252
个子级自命令共享对象符号
+ 92.25% 0.00% cp [kernel.kallsyms] [k] entry_SYSCALL_64_after_hwframe + 92.25% 0.00% cp [kernel.kallsyms] [k] do_syscall_64
+ 45.00% 0.00% cp libc-2.27.so [.] write + 45.00% 0.00% cp [kernel.kallsyms] [k] sys_write + 45.00% 0.00% cp [kernel.kallsyms] [k] vfs_write + 45.00% 0.00% cp [kernel.kallsyms] [k] __vfs_write
+ 45.00% 0.00% cp [kernel.kallsyms] [k] new_sync_write
+ 45.00% 0.00% cp [kernel.kallsyms] [k] ext4_file_write_iter
+ 45.00% 0.00% cp [kernel.kallsyms] [k] __generic_file_write_iter
+ 45.00% 0.00% cp [kernel.kallsyms] [k] generic_perform_write
+ 28.06% 0.00% cp libc-2.27.so [.] read
+ 28.06% 0.00% cp [kernel.kallsyms] [k] sys_read + 28.06% 0.00% cp [kernel.kallsyms] [k] vfs_read + 28.06% 0.00% cp [kernel.kallsyms] [k] __vfs_read
+ 28.06% 0.00% cp [kernel.kallsyms] [k] new_sync_read
+ 28.06% 0.00% cp [kernel.kallsyms] [k] fuse_file_read_iter
+ 28.06% 0.00% cp [kernel.kallsyms] [k] generic_file_read_iter
+ 24.79% 24.79% cp [kernel.kallsyms] [k] copy_user_generic_string
+ 21.76% 0.00% cp [kernel.kallsyms] [k] ext4_da_write_begin

我也扩展了一些结果,但我不清楚这一切表明了什么。

  • 92.25% 0.00% cp [kernel.kallsyms] [k] do_syscall_64

    • 15.66%do_syscall_64
      sys_read
      vfs_read
      __vfs_read
      new_sync_read fuse_file_read_iter
      generic_file_read_iter
      copy_page_to_iter
      copy_user_generic_string
    • 9.13% do_syscall_64
      sys_write
      vfs_write
      __vfs_write
      new_sync_write
      ext4_file_write_iter
      __generic_file_write_iter
      generic_perform_write
      iov_iter_copy_from_user_atomic
      copy_user_generic_string
  • 24.79% 24.79% cp [kernel.kallsyms] [k] copy_user_generic_string

    • 15.66%读取
      entry_SYSCALL_64_after_hwframe
      do_syscall_64 sys_read
      vfs_read
      __vfs_read
      new_sync_read fuse_file_read_iter
      generic_file_read_iter
      copy_page_to_iter
      copy_user_generic_string
    • 9.13% 0x52d407016256000e
      写入
      entry_SYSCALL_64_after_hwframe
      do_syscall_64 sys_write
      vfs_write
      __vfs_write
      new_sync_write
      ext4_file_write_iter
      __generic_file_write_iter
      generic_perform_write
      iov_iter_copy_from_user_atomic
      copy_user_generic_string

有 perf 工具专业知识的人能否对这些结果提供一些见解?

相关内容