Skip to content
Snippets Groups Projects
  • Tomasz Grabiec's avatar
    af723084
    loader.py: add commands for function duration analysis · af723084
    Tomasz Grabiec authored
    
    Duration analysis is based on trace pairs which follow the convention
    in which function entry generates trace named X and ends with either
    trace X_ret or X_err. Traces which do not have an accompanying return
    tracepoint are ignored.
    
    New commands:
    
      osv trace summary
    
          Prints execution time statistics for traces
    
      osv trace duration {function}
    
          Prints timed traces sorted by duration in descending order.
          Optionally narrowed down to a specified function
    
    gdb$ osv trace summary
    Execution times [ms]:
    name          count      min      50%      90%      99%    99.9%      max    total
    vfs_pwritev       3    0.682    1.042    1.078    1.078    1.078    1.078    2.801
    vfs_pwrite       32    0.006    1.986    3.313    6.816    6.816    6.816   53.007
    
    gdb$ osv trace duration
    0xffffc000671f0010  1    1385318632.103374   6.816 vfs_pwrite
    0xffffc0003bbef010  0    1385318637.929424   3.923 vfs_pwrite
    
    Signed-off-by: default avatarTomasz Grabiec <tgrabiec@cloudius-systems.com>
    Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>
    af723084
    History
    loader.py: add commands for function duration analysis
    Tomasz Grabiec authored
    
    Duration analysis is based on trace pairs which follow the convention
    in which function entry generates trace named X and ends with either
    trace X_ret or X_err. Traces which do not have an accompanying return
    tracepoint are ignored.
    
    New commands:
    
      osv trace summary
    
          Prints execution time statistics for traces
    
      osv trace duration {function}
    
          Prints timed traces sorted by duration in descending order.
          Optionally narrowed down to a specified function
    
    gdb$ osv trace summary
    Execution times [ms]:
    name          count      min      50%      90%      99%    99.9%      max    total
    vfs_pwritev       3    0.682    1.042    1.078    1.078    1.078    1.078    2.801
    vfs_pwrite       32    0.006    1.986    3.313    6.816    6.816    6.816   53.007
    
    gdb$ osv trace duration
    0xffffc000671f0010  1    1385318632.103374   6.816 vfs_pwrite
    0xffffc0003bbef010  0    1385318637.929424   3.923 vfs_pwrite
    
    Signed-off-by: default avatarTomasz Grabiec <tgrabiec@cloudius-systems.com>
    Signed-off-by: default avatarPekka Enberg <penberg@cloudius-systems.com>