1The following is a demonstration of the diskhits command.
2
3
4Here we run diskhits on a large file, /extra1/contents with is 46 Mb, and
5currently hasn't been accessed (so isn't in any cache).
6
7While diskhits is running, the file is grep'd in another window. This causes
8the entire file to be read,
9
10   # ./diskhits /extra1/contents
11   Tracing... Hit Ctrl-C to end.
12   ^C
13   Location (KB),
14   
15              value  ------------- Distribution ------------- count    
16                < 0 |                                         0        
17                  0 |@@                                       47       
18               2303 |@@                                       41       
19               4606 |@@                                       41       
20               6909 |@@                                       42       
21               9212 |@@                                       41       
22              11515 |@@                                       41       
23              13818 |@@                                       42       
24              16121 |@@                                       43       
25              18424 |@@                                       42       
26              20727 |@@                                       41       
27              23030 |@@                                       41       
28              25333 |@@                                       41       
29              27636 |@@                                       41       
30              29939 |@@                                       42       
31              32242 |@@                                       44       
32              34545 |@@                                       41       
33              36848 |@@                                       41       
34              39151 |@@                                       41       
35              41454 |@@                                       41       
36              43757 |@@                                       40       
37           >= 46060 |                                         0        
38   
39   Size (KB),
40   
41              value  ------------- Distribution ------------- count    
42               4 |                                         0        
43                  8 |                                         6        
44                 16 |                                         10       
45                 32 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  818      
46                 64 |                                         0        
47   
48   Total RW: 46064 KB
49
50Ok, so the file was read evently with each access around 32 to 63 Kb in size,
51and a total of 46 Mb read. This all makes sense, as it is reading the file
52for the first time.
53
54
55
56Now the same file is grep'd with diskhits running, this time we can see what
57effect caching the file has made,
58
59   # ./diskhits /extra1/contents
60   Tracing... Hit Ctrl-C to end.
61   ^C
62   Location (KB),
63   
64              value  ------------- Distribution ------------- count    
65               2303 |                                         0        
66               4606 |                                         5        
67               6909 |@                                        67       
68               9212 |@@@@                                     170      
69              11515 |@@@@@                                    216      
70              13818 |@@@@@                                    224      
71              16121 |@@@@@@                                   287      
72              18424 |@@@@@                                    227      
73              20727 |@@@                                      144      
74              23030 |@@                                       75       
75              25333 |@                                        59       
76              27636 |@                                        42       
77              29939 |@                                        41       
78              32242 |@                                        44       
79              34545 |@                                        41       
80              36848 |@                                        41       
81              39151 |@                                        41       
82              41454 |@                                        41       
83              43757 |@                                        39       
84           >= 46060 |                                         0        
85   
86   Size (KB),
87   
88              value  ------------- Distribution ------------- count    
89                  2 |                                         0        
90                  4 |@@@@@@@@@@@@@@@@@@@@@@@@@                1137     
91                  8 |@@@@@                                    211      
92                 16 |@@                                       111      
93                 32 |@@@@@@@@                                 345      
94                 64 |                                         0        
95   
96   Total RW: 29392 KB
97
98The difference is dramatic. This time only 29 Mb is read, leaving around 
9917 Mb that was read from the cache. The way the file is read differs - 
100in the later half of the file it looks the same, but in the first half there
101are many more events; oddly enough, this is because the early part of the 
102file is cached more, the extra events are likely to be much smaller in size -
103as indicated in the difference in the size distribution.
104
105It appears that everything less that 4606 Kb has remained in the cache, with 
106zero hits for that range.
107
108