]> git.sommitrealweird.co.uk Git - onak.git/blobdiff - onak.gprof
cscvs to tla changeset 3
[onak.git] / onak.gprof
diff --git a/onak.gprof b/onak.gprof
new file mode 100644 (file)
index 0000000..0e8b40b
--- /dev/null
@@ -0,0 +1,295 @@
+Flat profile:
+
+Each sample counts as 0.01 seconds.
+  %   cumulative   self              self     total           
+ time   seconds   seconds    calls  us/call  us/call  name    
+ 44.57      0.41     0.41    44208     9.27    14.02  transform
+ 22.83      0.62     0.21  9902592     0.02     0.02  rol
+  9.78      0.71     0.09    31610     2.85    19.66  sha1_write
+  7.61      0.78     0.07    33623     2.08     2.08  stdin_getchar
+  2.17      0.80     0.02     6937     2.88   106.67  get_keyid
+  2.17      0.82     0.02     1690    11.83    17.75  write_openpgp_stream
+  2.17      0.84     0.02                             Letext
+  1.09      0.85     0.01    30179     0.33     0.33  keydb_putchar
+  1.09      0.86     0.01    17848     0.56     0.56  packet_dup
+  1.09      0.87     0.01     6322     1.58    35.26  sha1_final
+  1.09      0.88     0.01     1690     5.92     8.88  flatten_publickey
+  1.09      0.89     0.01     1690     5.92     5.92  keyuids
+  1.09      0.90     0.01     1690     5.92   262.98  store_key
+  1.09      0.91     0.01        1 10000.00 10000.00  free_publickey
+  1.09      0.92     0.01        1 10000.00 815000.00  update_keys
+  0.00      0.92     0.00    17848     0.00     0.00  free_packet
+  0.00      0.92     0.00     6322     0.00     0.00  sha1_init
+  0.00      0.92     0.00     6322     0.00     0.00  sha1_read
+  0.00      0.92     0.00     3438     0.00     0.00  free_packet_list
+  0.00      0.92     0.00     3227     0.00     0.00  free_signedpacket_list
+  0.00      0.92     0.00     1690     0.00     0.00  endtrans
+  0.00      0.92     0.00     1690     0.00     0.00  fetch_key
+  0.00      0.92     0.00     1690     0.00     0.00  spsize
+  0.00      0.92     0.00     1690     0.00     0.00  starttrans
+  0.00      0.92     0.00        1     0.00     0.00  cleanupdb
+  0.00      0.92     0.00        1     0.00     0.00  initdb
+  0.00      0.92     0.00        1     0.00  5000.00  parse_keys
+  0.00      0.92     0.00        1     0.00 70000.00  read_openpgp_stream
+
+ %         the percentage of the total running time of the
+time       program used by this function.
+
+cumulative a running sum of the number of seconds accounted
+ seconds   for by this function and those listed above it.
+
+ self      the number of seconds accounted for by this
+seconds    function alone.  This is the major sort for this
+           listing.
+
+calls      the number of times this function was invoked, if
+           this function is profiled, else blank.
+ self      the average number of milliseconds spent in this
+ms/call    function per call, if this function is profiled,
+          else blank.
+
+ total     the average number of milliseconds spent in this
+ms/call    function and its descendents per call, if this 
+          function is profiled, else blank.
+
+name       the name of the function.  This is the minor sort
+           for this listing. The index shows the location of
+          the function in the gprof listing. If the index is
+          in parenthesis it shows where it would appear in
+          the gprof listing if it were to be printed.
+\f
+                    Call graph (explanation follows)
+
+
+granularity: each sample hit covers 4 byte(s) for 1.09% of 0.92 seconds
+
+index % time    self  children    called     name
+                                                 <spontaneous>
+[1]     97.8    0.00    0.90                 main [1]
+                0.01    0.81       1/1           update_keys [2]
+                0.00    0.07       1/1           read_openpgp_stream [10]
+                0.01    0.00       1/1           free_publickey [17]
+                0.00    0.01       1/1           parse_keys [18]
+                0.00    0.00       1/3438        free_packet_list [22]
+                0.00    0.00       1/1           initdb [29]
+                0.00    0.00       1/1           cleanupdb [28]
+-----------------------------------------------
+                0.01    0.81       1/1           main [1]
+[2]     88.6    0.01    0.81       1         update_keys [2]
+                0.01    0.43    1690/1690        store_key [6]
+                0.01    0.35    3380/6937        get_keyid [3]
+                0.00    0.00    1690/1690        starttrans [27]
+                0.00    0.00    1690/1690        fetch_key [25]
+                0.00    0.00    1690/1690        endtrans [24]
+-----------------------------------------------
+                0.01    0.35    3380/6937        update_keys [2]
+                0.01    0.37    3557/6937        store_key [6]
+[3]     80.4    0.02    0.72    6937         get_keyid [3]
+                0.07    0.43   25288/31610       sha1_write [4]
+                0.01    0.21    6322/6322        sha1_final [7]
+                0.00    0.00    6322/6322        sha1_init [20]
+                0.00    0.00    6322/6322        sha1_read [21]
+-----------------------------------------------
+                               18966             sha1_write [4]
+                0.02    0.11    6322/31610       sha1_final [7]
+                0.07    0.43   25288/31610       get_keyid [3]
+[4]     67.5    0.09    0.53   31610+18966   sha1_write [4]
+                0.35    0.18   37886/44208       transform [5]
+                               18966             sha1_write [4]
+-----------------------------------------------
+                0.06    0.03    6322/44208       sha1_final [7]
+                0.35    0.18   37886/44208       sha1_write [4]
+[5]     67.4    0.41    0.21   44208         transform [5]
+                0.21    0.00 9902592/9902592     rol [8]
+-----------------------------------------------
+                0.01    0.43    1690/1690        update_keys [2]
+[6]     48.3    0.01    0.43    1690         store_key [6]
+                0.01    0.37    3557/6937        get_keyid [3]
+                0.02    0.01    1690/1690        write_openpgp_stream [11]
+                0.01    0.01    1690/1690        flatten_publickey [13]
+                0.01    0.00    1690/1690        keyuids [16]
+-----------------------------------------------
+                0.01    0.21    6322/6322        get_keyid [3]
+[7]     24.2    0.01    0.21    6322         sha1_final [7]
+                0.02    0.11    6322/31610       sha1_write [4]
+                0.06    0.03    6322/44208       transform [5]
+-----------------------------------------------
+                0.21    0.00 9902592/9902592     transform [5]
+[8]     22.8    0.21    0.00 9902592         rol [8]
+-----------------------------------------------
+                0.07    0.00   33623/33623       read_openpgp_stream [10]
+[9]      7.6    0.07    0.00   33623         stdin_getchar [9]
+-----------------------------------------------
+                0.00    0.07       1/1           main [1]
+[10]     7.6    0.00    0.07       1         read_openpgp_stream [10]
+                0.07    0.00   33623/33623       stdin_getchar [9]
+-----------------------------------------------
+                0.02    0.01    1690/1690        store_key [6]
+[11]     3.3    0.02    0.01    1690         write_openpgp_stream [11]
+                0.01    0.00   30179/30179       keydb_putchar [14]
+-----------------------------------------------
+                                                 <spontaneous>
+[12]     2.2    0.02    0.00                 Letext [12]
+-----------------------------------------------
+                0.01    0.01    1690/1690        store_key [6]
+[13]     1.6    0.01    0.01    1690         flatten_publickey [13]
+                0.01    0.00    8924/17848       packet_dup [15]
+-----------------------------------------------
+                0.01    0.00   30179/30179       write_openpgp_stream [11]
+[14]     1.1    0.01    0.00   30179         keydb_putchar [14]
+-----------------------------------------------
+                0.01    0.00    8924/17848       parse_keys [18]
+                0.01    0.00    8924/17848       flatten_publickey [13]
+[15]     1.1    0.01    0.00   17848         packet_dup [15]
+-----------------------------------------------
+                0.01    0.00    1690/1690        store_key [6]
+[16]     1.1    0.01    0.00    1690         keyuids [16]
+                0.00    0.00    1690/1690        spsize [26]
+-----------------------------------------------
+                0.01    0.00       1/1           main [1]
+[17]     1.1    0.01    0.00       1         free_publickey [17]
+                0.00    0.00    3227/3227        free_signedpacket_list [23]
+                0.00    0.00    1690/17848       free_packet [19]
+                0.00    0.00      41/3438        free_packet_list [22]
+-----------------------------------------------
+                0.00    0.01       1/1           main [1]
+[18]     0.5    0.00    0.01       1         parse_keys [18]
+                0.01    0.00    8924/17848       packet_dup [15]
+-----------------------------------------------
+                0.00    0.00    1690/17848       free_publickey [17]
+                0.00    0.00    3410/17848       free_signedpacket_list [23]
+                0.00    0.00   12748/17848       free_packet_list [22]
+[19]     0.0    0.00    0.00   17848         free_packet [19]
+-----------------------------------------------
+                0.00    0.00    6322/6322        get_keyid [3]
+[20]     0.0    0.00    0.00    6322         sha1_init [20]
+-----------------------------------------------
+                0.00    0.00    6322/6322        get_keyid [3]
+[21]     0.0    0.00    0.00    6322         sha1_read [21]
+-----------------------------------------------
+                0.00    0.00       1/3438        main [1]
+                0.00    0.00      41/3438        free_publickey [17]
+                0.00    0.00    3396/3438        free_signedpacket_list [23]
+[22]     0.0    0.00    0.00    3438         free_packet_list [22]
+                0.00    0.00   12748/17848       free_packet [19]
+-----------------------------------------------
+                0.00    0.00    3227/3227        free_publickey [17]
+[23]     0.0    0.00    0.00    3227         free_signedpacket_list [23]
+                0.00    0.00    3410/17848       free_packet [19]
+                0.00    0.00    3396/3438        free_packet_list [22]
+-----------------------------------------------
+                0.00    0.00    1690/1690        update_keys [2]
+[24]     0.0    0.00    0.00    1690         endtrans [24]
+-----------------------------------------------
+                0.00    0.00    1690/1690        update_keys [2]
+[25]     0.0    0.00    0.00    1690         fetch_key [25]
+-----------------------------------------------
+                0.00    0.00    1690/1690        keyuids [16]
+[26]     0.0    0.00    0.00    1690         spsize [26]
+-----------------------------------------------
+                0.00    0.00    1690/1690        update_keys [2]
+[27]     0.0    0.00    0.00    1690         starttrans [27]
+-----------------------------------------------
+                0.00    0.00       1/1           main [1]
+[28]     0.0    0.00    0.00       1         cleanupdb [28]
+-----------------------------------------------
+                0.00    0.00       1/1           main [1]
+[29]     0.0    0.00    0.00       1         initdb [29]
+-----------------------------------------------
+
+ This table describes the call tree of the program, and was sorted by
+ the total amount of time spent in each function and its children.
+
+ Each entry in this table consists of several lines.  The line with the
+ index number at the left hand margin lists the current function.
+ The lines above it list the functions that called this function,
+ and the lines below it list the functions this one called.
+ This line lists:
+     index     A unique number given to each element of the table.
+               Index numbers are sorted numerically.
+               The index number is printed next to every function name so
+               it is easier to look up where the function in the table.
+
+     % time    This is the percentage of the `total' time that was spent
+               in this function and its children.  Note that due to
+               different viewpoints, functions excluded by options, etc,
+               these numbers will NOT add up to 100%.
+
+     self      This is the total amount of time spent in this function.
+
+     children  This is the total amount of time propagated into this
+               function by its children.
+
+     called    This is the number of times the function was called.
+               If the function called itself recursively, the number
+               only includes non-recursive calls, and is followed by
+               a `+' and the number of recursive calls.
+
+     name      The name of the current function.  The index number is
+               printed after it.  If the function is a member of a
+               cycle, the cycle number is printed between the
+               function's name and the index number.
+
+
+ For the function's parents, the fields have the following meanings:
+
+     self      This is the amount of time that was propagated directly
+               from the function into this parent.
+
+     children  This is the amount of time that was propagated from
+               the function's children into this parent.
+
+     called    This is the number of times this parent called the
+               function `/' the total number of times the function
+               was called.  Recursive calls to the function are not
+               included in the number after the `/'.
+
+     name      This is the name of the parent.  The parent's index
+               number is printed after it.  If the parent is a
+               member of a cycle, the cycle number is printed between
+               the name and the index number.
+
+ If the parents of the function cannot be determined, the word
+ `<spontaneous>' is printed in the `name' field, and all the other
+ fields are blank.
+
+ For the function's children, the fields have the following meanings:
+
+     self      This is the amount of time that was propagated directly
+               from the child into the function.
+
+     children  This is the amount of time that was propagated from the
+               child's children to the function.
+
+     called    This is the number of times the function called
+               this child `/' the total number of times the child
+               was called.  Recursive calls by the child are not
+               listed in the number after the `/'.
+
+     name      This is the name of the child.  The child's index
+               number is printed after it.  If the child is a
+               member of a cycle, the cycle number is printed
+               between the name and the index number.
+
+ If there are any cycles (circles) in the call graph, there is an
+ entry for the cycle-as-a-whole.  This entry shows who called the
+ cycle (as parents) and the members of the cycle (as children.)
+ The `+' recursive calls entry shows the number of function calls that
+ were internal to the cycle, and the calls entry for each member shows,
+ for that member, how many times it was called from other members of
+ the cycle.
+
+\f
+Index by function name
+
+  [12] Letext (bithelp.h)     [29] initdb                  [4] sha1_write
+  [28] cleanupdb              [14] keydb_putchar (keydb_pg.c) [26] spsize
+  [24] endtrans               [16] keyuids                [27] starttrans
+  [25] fetch_key              [15] packet_dup              [9] stdin_getchar
+  [13] flatten_publickey      [18] parse_keys              [6] store_key
+  [19] free_packet            [10] read_openpgp_stream     [5] transform (sha.c)
+  [22] free_packet_list        [8] rol (bithelp.h)         [2] update_keys
+  [17] free_publickey          [7] sha1_final             [11] write_openpgp_stream
+  [23] free_signedpacket_list [20] sha1_init
+   [3] get_keyid              [21] sha1_read