This repository was archived by the owner on Aug 3, 2024. It is now read-only.
Use the Builder patch for xhtml
#1546
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR uses the
Builderpatch to thexhtmllibrary.Performance comparison was done in a similar manner to the CPS WriterT patch, notes on the
xhtmlPR.tl;dr:
ppHtmlphaseWhile it seems kinda funny to care too much about "oh wow 600ms to 300ms wow wow", we've got some big re-export modules at work that currently take 33 seconds to generate, and
ppHtmlallocates over 800GB.EDIT:
Correctness
OK, I've tested the Haddock generation by building
haddockwith this patch and with theghc-9.4branch. The generated HTML is identical, as tested bydiff.Performance
This time I'm using
persistentinstead ofpersistent-testbecause it has fewer steps to get perf output from.Haddock
ghc-9.4This is built using
haddockon theghc-9.4branch.xhtmlBuilderFinal Performance Comparison:
Comparing these figures, we have:
xhtmlBuilderPretty pleased with these results.