rm -f gmon.out
./IntMapProfTest
gprof --brief IntMapProfTest gmon.out
Flat profile:
Each sample counts as 0.01 seconds.
% cumulative self self total
time seconds seconds calls ns/call ns/call name
38.24 3.83 3.83 8388608 457.17 600.33 isInMap
16.65 5.50 1.67 8388608 199.08 282.58 remov
14.81 6.99 1.49 8388608 177.03 291.30 insert
12.71 8.27 1.27 381681664 3.34 6.22 matchPrefix
11.22 9.39 1.12 390070271 2.88 2.88 getPrefix
1.69 9.56 0.17 8388607 20.27 39.24 join
1.60 9.72 0.16 main
0.90 9.81 0.09 8388608 10.73 10.73 freeLeaf
0.70 9.88 0.07 8388607 8.34 8.34 zeroPrefixFast
0.55 9.94 0.06 8388608 6.56 6.56 mkLeaf
0.55 9.99 0.06 8388607 6.56 6.56 mkFork
0.20 10.01 0.02 foreach
0.10 10.02 0.01 8388607 1.19 9.54 commonPrefixMask
0.10 10.03 0.01 8388607 1.19 1.19 freeFork

Call graph
granularity: each sample hit covers 4 byte(s) for 0.10% of 10.03 seconds
index % time self children called name
<spontaneous>
[1] 99.8 0.16 9.85 main [1]
3.83 1.20 8388608/8388608 isInMap [2]
1.49 0.96 8388608/8388608 insert [3]
1.67 0.70 8388608/8388608 remov [5]
-----------------------------------------------
192937984 isInMap [2]
3.83 1.20 8388608/8388608 main [1]
[2] 50.2 3.83 1.20 8388608+192937984 isInMap [2]
0.64 0.56 192937984/381681664 matchPrefix [4]
192937984 isInMap [2]
-----------------------------------------------
88080385 insert [3]
1.49 0.96 8388608/8388608 main [1]
[3] 24.4 1.49 0.96 8388608+88080385 insert [3]
0.31 0.27 92274688/381681664 matchPrefix [4]
0.17 0.16 8388607/8388607 join [7]
0.06 0.00 8388608/8388608 mkLeaf [11]
88080385 insert [3]
-----------------------------------------------
0.31 0.27 92274688/381681664 insert [3]
0.32 0.28 96468992/381681664 remov [5]
0.64 0.56 192937984/381681664 isInMap [2]
[4] 23.7 1.27 1.10 381681664 matchPrefix [4]
1.10 0.00 381681664/390070271 getPrefix [6]
-----------------------------------------------
96468992 remov [5]
1.67 0.70 8388608/8388608 main [1]
[5] 23.6 1.67 0.70 8388608+96468992 remov [5]
0.32 0.28 96468992/381681664 matchPrefix [4]
0.09 0.00 8388608/8388608 freeLeaf [8]
0.01 0.00 8388607/8388607 freeFork [14]
96468992 remov [5]
-----------------------------------------------
0.02 0.00 8388607/390070271 join [7]
1.10 0.00 381681664/390070271 matchPrefix [4]
[6] 11.2 1.12 0.00 390070271 getPrefix [6]
-----------------------------------------------
0.17 0.16 8388607/8388607 insert [3]
[7] 3.3 0.17 0.16 8388607 join [7]
0.01 0.07 8388607/8388607 commonPrefixMask [9]
0.06 0.00 8388607/8388607 mkFork [12]
0.02 0.00 8388607/390070271 getPrefix [6]
-----------------------------------------------
0.09 0.00 8388608/8388608 remov [5]
[8] 0.9 0.09 0.00 8388608 freeLeaf [8]
-----------------------------------------------
0.01 0.07 8388607/8388607 join [7]
[9] 0.8 0.01 0.07 8388607 commonPrefixMask [9]
0.07 0.00 8388607/8388607 zeroPrefixFast [10]
-----------------------------------------------
0.07 0.00 8388607/8388607 commonPrefixMask [9]
[10] 0.7 0.07 0.00 8388607 zeroPrefixFast [10]
-----------------------------------------------
0.06 0.00 8388608/8388608 insert [3]
[11] 0.5 0.06 0.00 8388608 mkLeaf [11]
-----------------------------------------------
0.06 0.00 8388607/8388607 join [7]
[12] 0.5 0.06 0.00 8388607 mkFork [12]
-----------------------------------------------
<spontaneous>
[13] 0.2 0.02 0.00 foreach [13]
-----------------------------------------------
0.01 0.00 8388607/8388607 remov [5]
[14] 0.1 0.01 0.00 8388607 freeFork [14]
-----------------------------------------------

Index by function name
[9] commonPrefixMask [3] insert [12] mkFork
[13] foreach [2] isInMap [11] mkLeaf
[14] freeFork [7] join [5] remov
[8] freeLeaf [1] main [10] zeroPrefixFast
[6] getPrefix [4] matchPrefix