guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCHES] Use a better SRFI-64 implementation.


From: Taylan Kammer
Subject: Re: [PATCHES] Use a better SRFI-64 implementation.
Date: Tue, 11 May 2021 16:32:08 +0200
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.10.1

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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]