Skip to content

Commit

Permalink
bitesize nits
Browse files Browse the repository at this point in the history
  • Loading branch information
brendangregg committed Feb 7, 2016
1 parent baebe80 commit 6497a84
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 18 deletions.
8 changes: 4 additions & 4 deletions tools/bitesize.py
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
# For Linux, uses BCC, eBPF. See .c file.
#
# USAGE: bitesize
# Ctrl-C will print the partially gathered histogram then exit.
#
# Ctrl-C will print the partially gathered histogram then exit.
#
# Copyright (c) 2016 Allan McAleavy
# Licensed under the Apache License, Version 2.0 (the "License")
Expand Down Expand Up @@ -46,7 +46,7 @@
struct val_t *valp;
valp = commbyreq.lookup(&req);
if ( valp == 0) {
if (valp == 0) {
return 0;
}
Expand All @@ -55,7 +55,7 @@
bpf_probe_read(&key.name, sizeof(key.name),valp->name);
dist.increment(key);
}
return 0;
return 0;
}
"""

Expand All @@ -72,4 +72,4 @@
try:
sleep(99999999)
except KeyboardInterrupt:
dist.print_log2_hist("Kbytes", "Process Name:")
dist.print_log2_hist("Kbytes", "Process Name")
25 changes: 11 additions & 14 deletions tools/bitesize_example.txt
Original file line number Diff line number Diff line change
@@ -1,18 +1,19 @@
Example of BCC tool bitesize.py
Examples of bitesize.py, the Linux bcc/eBPF version.


The aim of this tool is to show I/O distribution for requested block sizes, by process name.

# ./bitesize.py
Tracing... Hit Ctrl-C to end.
^C

Process Name: = 'kworker/u128:1'
Process Name = 'kworker/u128:1'
Kbytes : count distribution
0 -> 1 : 1 |******************** |
2 -> 3 : 0 | |
4 -> 7 : 2 |****************************************|

Process Name: = 'bitesize.py'
Process Name = 'bitesize.py'
Kbytes : count distribution
0 -> 1 : 0 | |
2 -> 3 : 0 | |
Expand All @@ -23,7 +24,7 @@ Process Name: = 'bitesize.py'
64 -> 127 : 0 | |
128 -> 255 : 1 |****************************************|

Process Name: = 'dd'
Process Name = 'dd'
Kbytes : count distribution
0 -> 1 : 3 | |
2 -> 3 : 0 | |
Expand All @@ -37,13 +38,13 @@ Process Name: = 'dd'
512 -> 1023 : 0 | |
1024 -> 2047 : 488 |****************************************|

Process Name: = 'jbd2/dm-1-8'
Process Name = 'jbd2/dm-1-8'
Kbytes : count distribution
0 -> 1 : 0 | |
2 -> 3 : 0 | |
4 -> 7 : 1 |****************************************|

Process Name: = 'cat'
Process Name = 'cat'
Kbytes : count distribution
0 -> 1 : 1 | |
2 -> 3 : 0 | |
Expand All @@ -55,27 +56,27 @@ Process Name: = 'cat'
128 -> 255 : 0 | |
256 -> 511 : 1924 |****************************************|

Process Name: = 'ntpd'
Process Name = 'ntpd'
Kbytes : count distribution
0 -> 1 : 0 | |
2 -> 3 : 0 | |
4 -> 7 : 104 |****************************************|

Process Name: = 'vmtoolsd'
Process Name = 'vmtoolsd'
Kbytes : count distribution
0 -> 1 : 0 | |
2 -> 3 : 0 | |
4 -> 7 : 1 |****************************************|

Process Name: = 'bash'
Process Name = 'bash'
Kbytes : count distribution
0 -> 1 : 0 | |
2 -> 3 : 0 | |
4 -> 7 : 0 | |
8 -> 15 : 0 | |
16 -> 31 : 2 |****************************************|

Process Name: = 'jbd2/sdb-8'
Process Name = 'jbd2/sdb-8'
Kbytes : count distribution
0 -> 1 : 0 | |
2 -> 3 : 0 | |
Expand All @@ -86,7 +87,3 @@ Process Name: = 'jbd2/sdb-8'

We can see from above that there was a dd command being run which generated 488 IOPS between 1MB and 2MB, we can also see the
cat command generating 1924 IOPS between 256Kb and 512Kb.


See also systemtap version:
https://github.com/brendangregg/systemtap-lwtools/blob/master/disk/bitesize-nd.stp

0 comments on commit 6497a84

Please sign in to comment.