In this PR I added useful logging of time for each transformation in UnrollMojo.
Also I speed up the vars-float-down.xsl and add-refs.xsl transformations.
Timings for vars-float-down.xsl transformation before optimization:
[WARNING] XSL 'vars-float-down' took 172ms (over 100ms)
[WARNING] XSL 'vars-float-down' took 176ms (over 100ms)
[WARNING] XSL 'vars-float-down' took 168ms (over 100ms)
[WARNING] XSL 'vars-float-down' took 168ms (over 100ms)
after optimization:
[WARNING] XSL 'vars-float-down' took 40ms (over 20ms)
[WARNING] XSL 'vars-float-down' took 45ms (over 20ms)
[WARNING] XSL 'vars-float-down' took 37ms (over 20ms)
[WARNING] XSL 'vars-float-down' took 37ms (over 20ms)
Related to #834.
PR-Codex overview
This PR focuses on optimizing the unrolling process of XMIR files in the Unroller class, enhancing XSLT templates for better XML transformations, and updating the CanonicalXmir class to improve the handling of transformation paths.
Detailed summary
Added timing for the unrolling process in Unroller.java.
Simplified byte array creation for XMIR files.
Enhanced XSLT templates in add-refs.xsl for improved base handling.
Introduced a key in vars-float-down.xsl for optimized reference lookups.
Updated transformation logic in CanonicalXmir.java for better efficiency.
✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}
In this PR I added useful logging of time for each transformation in
UnrollMojo
. Also I speed up thevars-float-down.xsl
andadd-refs.xsl
transformations.Timings for
vars-float-down.xsl
transformation before optimization:after optimization:
Related to #834.
PR-Codex overview
This PR focuses on optimizing the unrolling process of XMIR files in the
Unroller
class, enhancing XSLT templates for better XML transformations, and updating theCanonicalXmir
class to improve the handling of transformation paths.Detailed summary
Unroller.java
.add-refs.xsl
for improved base handling.vars-float-down.xsl
for optimized reference lookups.CanonicalXmir.java
for better efficiency.