updated profiling
authorJoey Hess <joeyh@joeyh.name>
Fri, 22 Nov 2019 23:13:35 +0000 (19:13 -0400)
committerJoey Hess <joeyh@joeyh.name>
Fri, 22 Nov 2019 23:13:35 +0000 (19:13 -0400)
doc/profiling/comment_6_ca4ac016a0fb0132fc5c746dfb6fefb3._comment [new file with mode: 0644]

diff --git a/doc/profiling/comment_6_ca4ac016a0fb0132fc5c746dfb6fefb3._comment b/doc/profiling/comment_6_ca4ac016a0fb0132fc5c746dfb6fefb3._comment
new file mode 100644 (file)
index 0000000..7f8d3a2
--- /dev/null
@@ -0,0 +1,70 @@
+[[!comment format=mdwn
+ username="joey"
+ subject="""comment 6"""
+ date="2019-11-22T22:18:02Z"
+ content="""
+After caching serialized Keys.
+
+               Fri Nov 22 19:06 2019 Time and Allocation Profiling Report  (Final)
+       
+                  git-annex +RTS -p -RTS find
+       
+               total time  =        3.00 secs   (2997 ticks @ 1000 us, 1 processor)
+               total alloc = 1,890,060,432 bytes  (excludes profiling overheads)
+       
+       COST CENTRE                      MODULE                         SRC                                                 %time %alloc
+       
+       inAnnex'.\                       Annex.Content                  Annex/Content.hs:(103,61)-(118,31)                   28.2   40.6
+       keyFile'                         Annex.Locations                Annex/Locations.hs:(564,1)-(574,30)                   3.8    5.3
+       splitc                           Utility.Split                  Utility/Split.hs:(24,1)-(26,25)                       3.7    5.1
+       _encodeFilePath                  Utility.FileSystemEncoding     Utility/FileSystemEncoding.hs:(111,1)-(114,49)        3.1    2.7
+       encodeW8                         Utility.FileSystemEncoding     Utility/FileSystemEncoding.hs:(189,1)-(191,70)        3.0    3.6
+       w82s                             Utility.FileSystemEncoding     Utility/FileSystemEncoding.hs:217:1-15                2.8    5.1
+       >>=.\.succ'                      Data.Attoparsec.Internal.Types Data/Attoparsec/Internal/Types.hs:146:13-76           2.8    0.2
+       >>=.\                            Data.Attoparsec.Internal.Types Data/Attoparsec/Internal/Types.hs:(146,9)-(147,44)    2.5    0.7
+       getAnnexLinkTarget'.probesymlink Annex.Link                     Annex/Link.hs:78:9-62                                 2.4    2.5
+       fileKey'                         Annex.Locations                Annex/Locations.hs:(583,1)-(593,41)                   2.1    1.5
+       parseLinkTarget                  Annex.Link                     Annex/Link.hs:(254,1)-(262,25)                        2.0    3.8
+       keyFile'.esc                     Annex.Locations                Annex/Locations.hs:(570,9)-(574,30)                   1.9    4.7
+       s2w8                             Utility.FileSystemEncoding     Utility/FileSystemEncoding.hs:214:1-15                1.7    3.5
+       keyPath                          Annex.Locations                Annex/Locations.hs:(603,1)-(605,23)                   1.6    3.5
+       getState                         Annex                          Annex.hs:(251,1)-(254,27)                             1.6    0.3
+       parseKeyVariety                  Types.Key                      Types/Key.hs:(322,1)-(370,42)                         1.4    0.0
+       withMutablePtrHint               Basement.Block.Base            Basement/Block/Base.hs:(468,1)-(482,50)               1.3    0.4
+       hashUpdates.\.\.\                Crypto.Hash                    Crypto/Hash.hs:85:48-99                               1.2    0.0
+       parseLinkTargetOrPointer         Annex.Link                     Annex/Link.hs:(239,1)-(243,25)                        1.1    0.1
+       primitive                        Basement.Monad                 Basement/Monad.hs:72:5-18                             1.1    0.0
+       withPtr.makeTrampoline           Basement.Block.Base            Basement/Block/Base.hs:(401,5)-(404,31)               1.0    0.6
+       assertLocal                      Git                            Git.hs:(123,1)-(129,28)                               0.8    1.6
+       decodeBS'                        Utility.FileSystemEncoding     Utility/FileSystemEncoding.hs:151:1-31                0.4    2.4
+
+Runtime improved by 5% or so, and getAnnexLinkTarget moved up, otherwise
+not a lot of change. keyFile is looking like an optimization target,
+although its percent of the runtime actually reduced. 
+However that's specific to this repo which has a lot of URL keys that
+contain '/' and so need to be escaped.
+
+               Fri Nov 22 19:09 2019 Time and Allocation Profiling Report  (Final)
+       
+                  git-annex +RTS -p -RTS find --not --in web
+       
+               total time  =        8.42 secs   (8421 ticks @ 1000 us, 1 processor)
+               total alloc = 1,887,547,744 bytes  (excludes profiling overheads)
+       
+       COST CENTRE                      MODULE                           SRC                                                 %time %alloc
+       
+       catObjectDetails.\               Git.CatFile                      Git/CatFile.hs:(83,88)-(91,97)                        8.1    4.1
+       catchMaybeIO                     Utility.Exception                Utility/Exception.hs:53:1-63                          7.6    2.2
+       parseResp                        Git.CatFile                      Git/CatFile.hs:(145,1)-(156,28)                       5.2    5.6
+       >>=.\                            Data.Attoparsec.Internal.Types   Data/Attoparsec/Internal/Types.hs:(146,9)-(147,44)    5.0    2.0
+       >>=.\.succ'                      Data.Attoparsec.Internal.Types   Data/Attoparsec/Internal/Types.hs:146:13-76           4.7    1.0
+       MAIN                             MAIN                             <built-in>                                            4.2    0.4
+       getState                         Annex                            Annex.hs:(251,1)-(254,27)                             2.0    1.1
+       getAnnexLinkTarget'.probesymlink Annex.Link                       Annex/Link.hs:78:9-62                                 1.9    2.6
+       splitc                           Utility.Split                    Utility/Split.hs:(24,1)-(26,25)                       1.9    5.2
+       _encodeFilePath                  Utility.FileSystemEncoding       Utility/FileSystemEncoding.hs:(111,1)-(114,49)        1.8    2.8
+       query.send                       Git.CatFile                      Git/CatFile.hs:141:9-32                               1.7    0.5
+       keyFile'                         Annex.Locations                  Annex/Locations.hs:(564,1)-(574,30)                   1.6    5.4
+
+Ditto.
+"""]]