Ensure that the generator gets notified about an I/O error for the dir
[rsync.git] / doc / profile.txt
1 Notes on rsync profiling
2
3 strlcpy is hot:
4
5                 0.00    0.00       1/7735635     push_dir [68]
6                 0.00    0.00       1/7735635     pop_dir [71]
7                 0.00    0.00       1/7735635     send_file_list [15]
8                 0.01    0.00   18857/7735635     send_files [4]
9                 0.04    0.00  129260/7735635     send_file_entry [18]
10                 0.04    0.00  129260/7735635     make_file [20]
11                 0.04    0.00  141666/7735635     send_directory <cycle 1> [36]
12                 2.29    0.00 7316589/7735635     f_name [13]
13 [14]    11.7    2.42    0.00 7735635         strlcpy [14]
14
15
16 Here's the top few functions:
17
18  46.23      9.57     9.57 13160929     0.00     0.00  mdfour64
19  14.78     12.63     3.06 13160929     0.00     0.00  copy64
20  11.69     15.05     2.42  7735635     0.00     0.00  strlcpy
21  10.05     17.13     2.08    41438     0.05     0.38  sum_update
22   4.11     17.98     0.85 13159996     0.00     0.00  mdfour_update
23   1.50     18.29     0.31                             file_compare
24   1.45     18.59     0.30   129261     0.00     0.01  send_file_entry
25   1.23     18.84     0.26  2557585     0.00     0.00  f_name
26   1.11     19.07     0.23  1483750     0.00     0.00  u_strcmp
27   1.11     19.30     0.23   118129     0.00     0.00  writefd_unbuffered
28   0.92     19.50     0.19  1085011     0.00     0.00  writefd
29   0.43     19.59     0.09   156987     0.00     0.00  read_timeout
30   0.43     19.68     0.09   129261     0.00     0.00  clean_fname
31   0.39     19.75     0.08    32887     0.00     0.38  matched
32   0.34     19.82     0.07        1    70.00 16293.92  send_files
33   0.29     19.89     0.06   129260     0.00     0.00  make_file
34   0.29     19.95     0.06    75430     0.00     0.00  read_unbuffered
35
36
37
38 mdfour could perhaps be made faster:
39
40 /* NOTE: This code makes no attempt to be fast!  */
41
42 There might be an optimized version somewhere that we can borrow.