You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@daffodil.apache.org by "Steve Lawrence (Jira)" <ji...@apache.org> on 2022/01/05 15:18:00 UTC
[jira] [Created] (DAFFODIL-2619) Add InfosetInputter with minimal overhead
Steve Lawrence created DAFFODIL-2619:
----------------------------------------
Summary: Add InfosetInputter with minimal overhead
Key: DAFFODIL-2619
URL: https://issues.apache.org/jira/browse/DAFFODIL-2619
Project: Daffodil
Issue Type: Bug
Components: Performance
Reporter: Steve Lawrence
Assignee: Steve Lawrence
Fix For: 3.3.0
When unparsing, some amount of performance can be attributed to parsing/traversing the infoset representation (e.g. text, Scala, JDOM) and converting it to the infoset events that Daffodil requires. This is done via an InfosetInputter. Because an InfosetInputter is required during unparsing (unlike parse which can have a null InfosetOutputter) it is difficult to determine how much overhead comes from the InfosetInputter and how much comes from the actual unpasing operations.
One potential option to get a better pictures of raw unparse speed vs InfosetInputter overhead is to create a new InfosetInputter that uses a pre-created array of events that are as close as possible to what Daffodil expects. This way, the overhead of creating the event array can occur outside any measured unparser code, and the overhead of the InfosetInputter that does occur inside measured code is quite small--just the amount to index into this array and return the event information.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)