You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@daffodil.apache.org by GitBox <gi...@apache.org> on 2020/02/03 14:16:45 UTC
[GitHub] [incubator-daffodil] stevedlawrence commented on issue #318: Add
new TimeTracker for more advanced performance analysis
stevedlawrence commented on issue #318: Add new TimeTracker for more advanced performance analysis
URL: https://github.com/apache/incubator-daffodil/pull/318#issuecomment-581434686
An example of the output, adding the TImeTracker around the parse() call like mentioned in the commit message and parsing a large CSV-like data format, we get the following stats:
```
Name Time Pct Average Count
LiteralNilDelimitedEndOfDataParser 3.330 34.03% 4030 826140
StringDelimitedParser 2.455 25.09% 4184 586640
DelimiterTextParser 1.038 10.61% 879 1180480
SimpleNilOrValueParser 0.985 10.07% 1192 826140
OrderedSeparatedSequenceParser 0.806 8.23% 10232 78720
ElementParser 0.404 4.13% 342 1180520
DelimiterStackParser 0.308 3.15% 244 1259220
ChoiceParser 0.226 2.31% 5750 39360
SeqCompParser 0.113 1.15% 318 354300
ConvertTextNumberParser 0.060 0.61% 1489652 40
OrderedUnseparatedSequenceParser 0.058 0.60% 2922016 20
ConvertTextCombinatorParser 0.000 0.00% 8825 40
Total Time: 9.783
```
So we can see we spend a third of the time trying to parse delimted Nils, a quarter of the time trying to parse delimited strings, a thenth parsing actual delimiters, and so on. So to get any real benefits, we really just need to focus on speeding up these parsers. Note that this isn't too surpsing, we would expect delimiter scanning to take up a good chunk of the time, but it's helpful to see that in number form.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services