You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@daffodil.apache.org by "Beckerle, Mike" <mb...@tresys.com> on 2019/12/05 20:24:28 UTC

Progress on schema compilation time

I have been working on DAFFODIL-1444 which is about improving schema compilation space/speed.

I wanted to report on progress.

Two schemas that take a long time to compile are EDIFACT and HL7-v2.7.

I show below the improvement in schema compilation performance. I am comparing the current Daffodil 2.5.0 master as of 2019-12-05 15:00 US.ET (before), to my development sandbox (after).

The test compiles the schema, and does a save of the compiled schema to a null output stream.


 before
after
EDIFACT
88 seconds
11 seconds
HL7
35 seconds
 5 seconds

This is a factor of 7 to 8 or so on these schemas.

Caveats: almost all optimizations are turned off,  so runtime would be slow, and in fact without alignment optimizations many unparser tests fail due to circular deadlocks on forward-computed length.

So next is putting the basic optimizations back in and getting all tests to work.

There are additional improvements possible which should further improve schema compilation time substantially.