On 10.05.2021 20:25, Taylan Kammer wrote: > > - Improved expand-time performance for large test suites >
I thought it would be a good idea to quantify this, so I benchmarked the compilation performance of a test suite of 289 tests (that of the scheme-bytsetructures library), and had the following results. The first three compilations are with stock Guile 3.0.7, and the latter three are with the patch that replaces the SRFI-64 implementation applied to 3.0.7. === snip === $ touch run-tests.guile.scm && time /opt/guile-3.0.7/bin/guild compile -L . run-tests.guile.scm wrote `.../run-tests.guile.scm.go' real 0m9.465s user 0m12.787s sys 0m2.179s $ touch run-tests.guile.scm && time /opt/guile-3.0.7/bin/guild compile -L . run-tests.guile.scm wrote `.../run-tests.guile.scm.go' real 0m9.419s user 0m12.988s sys 0m1.842s $ touch run-tests.guile.scm && time /opt/guile-3.0.7/bin/guild compile -L . run-tests.guile.scm wrote `.../run-tests.guile.scm.go' real 0m9.387s user 0m13.132s sys 0m1.656s $ touch run-tests.guile.scm && time /opt/guile-master/bin/guild compile -L . run-tests.guile.scm wrote `.../run-tests.guile.scm.go' real 0m4.371s user 0m5.903s sys 0m1.239s $ touch run-tests.guile.scm && time /opt/guile-master/bin/guild compile -L . run-tests.guile.scm wrote `.../run-tests.guile.scm.go' real 0m4.556s user 0m6.836s sys 0m1.502s $ touch run-tests.guile.scm && time /opt/guile-master/bin/guild compile -L . run-tests.guile.scm wrote `.../run-tests.guile.scm.go' real 0m4.493s user 0m6.273s sys 0m1.767s === /snip === As you can see, the time to compile the test suite is cut in half. Here's the test suite used for the benchmark: https://github.com/TaylanUB/scheme-bytestructures/blob/master/run-tests.body.scm (That file is included from run-test.guile.scm.) - Taylan