git-annex/doc/profiling/comment_6_ca4ac016a0fb0132fc5c746dfb6fefb3._comment
2019-11-22 19:13:35 -04:00

70 lines
5.7 KiB
Text

[[!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.
"""]]